Commit Graph

200 Commits

Author SHA1 Message Date
Benau
90a22a691a Use GEVulkanDynamicSPMBuffer on streaming buffers 2022-11-29 13:02:36 +08:00
Benau
d5fdcb2d98 Add GEVulkanDynamicSPMBuffer 2022-11-28 15:16:28 +08:00
Benau
fd579111e1 Add setNormal and setTCoords for IMeshBuffer 2022-11-27 09:07:07 +08:00
Benau
4c7353a3a4 Add fullscreen desktop option for non-ge capable device 2022-11-08 12:08:27 +08:00
Benau
e2a82b3c09 Fix sometimes android black screen after resuming in vulkan 2022-11-07 10:51:29 +08:00
Benau
6b8e0644db Remove validation warnings when RTT is used 2022-11-07 10:18:32 +08:00
Benau
9cd217acfe Add convertIrrlichtMeshToSPM 2022-10-21 08:40:23 +08:00
Benau
58a00f7627 Store and render custom vertex color in GERenderInfo 2022-10-18 15:07:11 +08:00
Benau
5ecdc11ffd Fix sky particles rendering in vulkan
Align them with the vertical axis
2022-10-16 12:08:02 +08:00
Benau
1fc460ff4e Add flips particle rendering for vulkan 2022-10-14 10:17:58 +08:00
Benau
46f44b5d59 Add getBulletQuaternion for MiniGLM 2022-10-13 12:12:07 +08:00
Benau
6cdc554d21 Avoid updating data descriptor sets every frame 2022-10-12 15:30:31 +08:00
Benau
26f96b0986 Allow GEVulkanDynamicBuffer to use a specific frame 2022-10-11 12:05:47 +08:00
Benau
f85f631c4b Return true if buffer resized 2022-10-10 10:26:05 +08:00
Benau
e9be8d91ef Avoid using VMA_MEMORY_USAGE_AUTO if possible 2022-10-09 09:37:18 +08:00
Benau
542ece64f9 Use triple buffer to avoid memcpy after fence 2022-10-08 13:04:22 +08:00
Benau
982a5b2be8 Reduce usage of local buffer in GEVulkanDrawCall 2022-10-07 11:48:39 +08:00
Benau
91dea5f50d Use VMA_MEMORY_USAGE_AUTO_PREFER_HOST for host buffer
This improves performance when particles are used
2022-10-06 16:12:44 +08:00
Benau
51a1396313 Allow creating different buffer sizes in GEVulkanDynamicBuffer 2022-10-05 11:08:52 +08:00
Benau
e5318d8ea9 Fix crash when minimizing in windows 2022-10-04 13:55:51 +08:00
Benau
d69f83c7cc Fix WRITE_AFTER_WRITE error:
vkCmdBeginRenderPass: Hazard WRITE_AFTER_WRITE vs. layout transition in
subpass 0 for attachment 1 aspect depth during load with loadOp
VK_ATTACHMENT_LOAD_OP_CLEAR.
2022-10-03 10:05:33 +08:00
Benau
b2404aadd2 Reduce instance data size
MoltenVK has no DrawIndex support yet
2022-10-02 16:41:09 +08:00
Benau
e1f8294008 Use dedicated buffer for sbo 2022-10-01 12:20:35 +08:00
Benau
421293b8e9 Add shader draw parameters detection 2022-09-30 14:42:06 +08:00
Benau
86c349e5f2 Properly check and enable vulkan extensions 2022-09-29 16:01:27 +08:00
Benau
11a168b4bf Avoid error when particle size is zero 2022-09-26 10:36:01 +08:00
Dmitry Marakasov
dd511638db Initialize vulkan handles properly 2022-09-20 23:47:45 +03:00
Benau
bf0db0497b Don't throw when missing texture during ondemand loading
It can happen when the texture is deleted later
2022-09-19 10:24:55 +08:00
Benau
f270b4acf8 Add particle rendering in vulkan 2022-09-18 11:31:06 +08:00
Benau
4d79ccdea5 Add different texture per draw call for billboard 2022-09-18 10:54:22 +08:00
Benau
50c22a5837 Use real transparent shader first in vulkan draw call 2022-09-18 08:18:47 +08:00
Benau
7199409de4 Fix vulkan projection matrix 2022-09-17 16:26:10 +08:00
Benau
787d157933 Add billboard rendering in vulkan 2022-09-14 16:19:38 +08:00
Benau
9804416a82 Fix transparent shader drawing order
Use the same order like current engine
2022-09-12 13:38:01 +08:00
Benau
bf8a411f01 Always use GESPMBuffer for GEVulkanDrawCall::m_materials key 2022-09-12 13:14:05 +08:00
Benau
23470bbde2 Add custom vertex color to instance data 2022-09-12 11:07:22 +08:00
Benau
7cc238e101 Remove friend class in GE::GESPMBuffer 2022-09-11 15:04:38 +08:00
Benau
76c39afd8b Add colorization for vulkan 2022-09-11 11:05:33 +08:00
Benau
4207714352 Use GE::GERenderInfo to draw ghost kart and ctf flag in vulkan 2022-09-06 15:46:05 +08:00
Benau
2d0c945dd8 Move RenderInfo class to GE 2022-09-05 16:22:04 +08:00
Benau
79bf026c74 Don't check for descriptor indexing properties on non-apple devices
Some drivers (like ivybridge on linux) report incorrect values and
make graphics pipeline creation crash later
2022-09-04 09:05:00 +08:00
Benau
d93b5d3b8d Fix hang when switching kart in selection screen for vulkan 2022-09-03 12:04:44 +08:00
Benau
784b77723c Add missing vkCmdBindDescriptorSets for supportsBindMeshTexturesAtOnce 2022-09-03 10:30:54 +08:00
Benau
b0b9f44aeb Always use stable_sort to avoid flickering with alpha blending 2022-09-03 09:27:06 +08:00
Benau
d55eb56d78 Fix logic error in GEVulkanTexture::getTextureData 2022-09-02 19:37:37 +08:00
Benau
1eb19e5e13 Allow changing texture compression setting without restarting stk 2022-09-02 10:04:10 +08:00
Benau
0b4bf178d7 Add texture matrix support in vulkan 2022-09-02 09:07:43 +08:00
Benau
089dd025f1 Implement GEVulkanTexture::getTextureSize correctly 2022-08-31 13:09:41 +08:00
Benau
3db036d67f Fix data race when deleting GEVulkanTexture 2022-08-31 12:36:55 +08:00
Benau
4ceec85edc Fix infinite GEVulkanTexture::waitImageView if createImageView failed 2022-08-31 11:20:04 +08:00