Henrik Rydgård
1afd47b563
Fix ARM32 build error (neon)
2023-11-28 18:39:12 +01:00
Henrik Rydgård
087366bdee
Add a unit test for 4x4 matrix multiplication
2023-11-28 10:52:19 +01:00
Henrik Rydgård
4ec2d76bc9
NEON-optimize matrix tranposes
2023-11-27 23:57:26 +01:00
Henrik Rydgård
45aae7b9da
ARM32: Backport a lot of previously 64-bit-only NEON optimizations to ARM32.
2023-11-27 23:51:10 +01:00
Henrik Rydgård
dae758e5f4
Fix some bugs and mistakes found by Nemoumbra through static analysis
2023-11-26 13:43:11 +01:00
Henrik Rydgård
aec0606ba4
Optimize the bounding box code for more vertex formats
2023-11-26 13:40:37 +01:00
Henrik Rydgård
cb9c6dc661
Merge pull request #18418 from hrydgard/simplify-input-layout
...
thin3d/backends: Remove code that pretended that we supported multiple vertex streams
2023-11-13 12:51:09 +01:00
Henrik Rydgård
d891aaf9cd
Remove code that pretended that we supported multiple vertex streams
...
Don't really see that we'll have much use for this feature, so simplify
it away. Only single vertex stream data is now supported by the thin3d
API.
2023-11-13 01:15:28 +01:00
Henrik Rydgård
77825484a0
If available, use 16-bit texture formats for MakePixelTexture when appropriate.
...
Optimization for God of War on low-end platforms. Avoids calling a color
conversion function that's currently only SIMD-optimized on x86, so will
also benefit ARM a little bit.
2023-11-12 15:58:03 +01:00
Henrik Rydgård
49f5da370a
Simplify the logic in MakePixelTexture a bit
2023-11-12 11:19:45 +01:00
Henrik Rydgård
cc6f9a73ca
Oops, fix for previous commit. And minor optimization.
2023-11-12 01:32:02 +01:00
Henrik Rydgård
632fa1c9d6
Cache and hash data for DrawPixels.
...
We already had a cache to reuse texture objects so just
opportunistically reuse them when easy to do so.
2023-11-11 19:58:12 +01:00
Henrik Rydgård
dd032dc533
Delete two unused structs
2023-11-11 10:55:54 +01:00
Henrik Rydgård
4f2f1c4392
Tilt: Fix some edge cases leading to division by zero and similar.
2023-11-09 19:14:31 +01:00
Henrik Rydgård
48a1348352
Move a var for clarity
2023-11-01 21:30:04 -06:00
Henrik Rydgård
ee6ffac28e
Ignore triangle strips with less than 3 vertices.
...
Should fix the new issue reported in #18273
2023-11-01 21:28:37 -06:00
Henrik Rydgård
618589abd8
Merge pull request #18362 from unknownbrackets/softgpu-zmirror
...
softgpu: Point depthbuf at the first VRAM mirror
2023-10-15 22:53:00 +02:00
Unknown W. Brackets
f7f05072fe
softgpu: Point depthbuf at the first VRAM mirror.
2023-10-15 10:33:05 -07:00
Henrik Rydgård
f842f16fbe
Inline "DecodeVertexToPushPool" for ease of change.
2023-10-12 11:58:49 +02:00
Henrik Rydgård
12a98baf59
Cleanups, make the various SubmitPrim implementations more similar
2023-10-12 11:58:48 +02:00
Henrik Rydgård
f769b2c8a3
Remove unused functionality from descpool
2023-10-11 12:29:57 +02:00
Henrik Rydgård
0ad2827e14
Vulkan: Fix synchronization when shutting the GPU down in-game.
2023-10-11 12:27:39 +02:00
Henrik Rydgård
183d49329a
Allow writing directly into the packed descriptor buffer, saving a memcpy.
2023-10-11 11:02:17 +02:00
Henrik Rydgård
2ac14f555d
Remove VulkanPushBuffer (keeping our newer replacement VulkanPushPool)
2023-10-11 09:06:24 +02:00
Henrik Rydgård
e4ea4831e9
Delete the vertex cache option from the code.
2023-10-10 15:43:43 +02:00