Commit Graph

1187 Commits

Author SHA1 Message Date
Benau
8358b7be0a Allow SMesh to be used in irrlicht mesh cache 2022-10-22 15:40:27 +08:00
Benau
9cd217acfe Add convertIrrlichtMeshToSPM 2022-10-21 08:40:23 +08:00
Benau
0e142e645c Handle vertex color in render info for COGLES2FixedPipelineRenderer 2022-10-19 09:29:06 +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
dd6768911d Build for armv7 windows
No installer as armv7 windows has no x86 emulation
2022-09-18 23:54:44 +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
b77160527c Fix texture matrix for gles2 driver 2022-09-15 09:01:55 +08:00
Benau
16173207ee Add colorization support for gles2 driver 2022-09-15 08:30:24 +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
Benau
38b995bf61 Avoid hangs if reloading textures too much 2022-08-31 11:08:48 +08:00