Commit graph

41896 commits

Author SHA1 Message Date
Luboš V.
d1f8b78bbb
OpenXR - Remove non-functional Vulkan implementation (#19766)
* OpenXR - Remove non-functional Vulkan implementation

* Forgotten to commit
2024-12-26 10:05:18 +01:00
Henrik Rydgård
5def50cca6
Merge pull request #19764 from hrydgard/even-more-depth-raster-stuff
Enable depth raster in all backends
2024-12-25 12:08:51 +01:00
Henrik Rydgård
f8774a4d15
Merge pull request #19765 from DDinghoya/patch-29
Update ko_KR.ini
2024-12-25 09:05:25 +01:00
DDinghoya
72ceda067b
Update ko_KR.ini 2024-12-25 10:01:51 +09:00
Henrik Rydgård
4aaea67766 Enable depth raster in all backends, not just Vulkan 2024-12-24 23:26:32 +01:00
Henrik Rydgård
032f51988d Delete unused files 2024-12-24 23:26:32 +01:00
Henrik Rydgård
0e59cd7641 DepthRaster: Fix typo breaking LESS depth comparison mode on x86(64) 2024-12-24 23:26:32 +01:00
Henrik Rydgård
34f3b724cd
Merge pull request #19762 from Nemoumbra/volmem-tags
Volatile memory improvements
2024-12-23 23:02:33 +01:00
Nemoumbra
1a1f779ce7 Added memory tags for volatile memory 2024-12-23 21:22:55 +03:00
Henrik Rydgård
79940fe58a
Merge pull request #19761 from hrydgard/more-depth-raster-stuff
Enable depth raster for Armored Core by default, minor speedup
2024-12-22 19:44:40 +01:00
Henrik Rydgård
b39a09e87b Specialize DepthRasterTriangle for the comparison modes using templating. 2024-12-22 19:24:12 +01:00
Henrik Rydgård
8e747dc948 CrossSIMD: Add a multiply-as-16bit function to Vec4S32. This can be implemented quickly on SSE2. 2024-12-22 18:53:10 +01:00
Henrik Rydgård
36b393f2cd Enable depth raster for Armored Core: Silent line
See #17597. Also improve some comments.
2024-12-22 18:27:12 +01:00
Henrik Rydgård
037ca2ac25
Merge pull request #19760 from hrydgard/depth-raster-clip-rects
Depth raster: Clip rects to scissor too. Fixes some crashes
2024-12-22 14:31:36 +01:00
Henrik Rydgård
ab088cf158 Depth raster: Clip rects to scissor too. Fixes some crashes 2024-12-22 14:14:55 +01:00
Henrik Rydgård
7d4edddf58
Merge pull request #19759 from hrydgard/enable-depth-raster
Enable software depth raster for Wipeout, Midnight Club LA, Resistance.
2024-12-22 11:18:58 +01:00
Henrik Rydgård
fed54f6cb5
Merge pull request #19758 from hrydgard/depth-raster-more-improvements
Depth raster: more improvements
2024-12-22 10:48:57 +01:00
Henrik Rydgård
03f09aebd7 Enable software depth raster for Wipeout, Midnight Club LA, Resistance.
Adds a setting to control it under speedhacks, named "Lens flare
occlusion". The setting includes a low quality mode which is not yet
implemented.
2024-12-22 10:48:46 +01:00
Henrik Rydgård
3ccb01b09c Depth Raster: Add more stats, discard triangles with < 10 px area. Still good results. 2024-12-22 10:32:20 +01:00
Henrik Rydgård
19434ff303 Keep the depth in floating point to save some conversions 2024-12-22 10:32:19 +01:00
Henrik Rydgård
3bd2441f4a CrossSIMD: Add SwapLowerElements to Vec4F32 2024-12-22 10:32:16 +01:00
Henrik Rydgård
0629a98f97 Add some depth raster stats 2024-12-22 10:32:15 +01:00
Henrik Rydgård
d53635e096 Optimize the triangle inner loop a little more 2024-12-22 10:32:15 +01:00
Henrik Rydgård
ad2714ad67
Merge pull request #19756 from hrydgard/depth-raster-improvements
Depth raster: Fix when software transform is enabled, support non-through mode rectangles
2024-12-21 21:50:56 +01:00
Henrik Rydgård
2371fdfedd Rework depth raster to fully support software transform 2024-12-21 21:22:22 +01:00
Henrik Rydgård
bd3a252104 CrossSIMD: Add a simple operation 2024-12-21 21:21:40 +01:00
Henrik Rydgård
4b4d30e587
Merge pull request #19748 from hrydgard/software-depth-proto
Render a software depth buffer in parallel with HW rendering
2024-12-21 16:35:17 +01:00
Henrik Rydgård
80cb57f8bb Cleanup 2024-12-21 14:28:01 +01:00
Henrik Rydgård
8cd86b47b5 AnyZeroSignBit arm fix, more crosssimd fixes. Now works on ARM. 2024-12-21 14:28:01 +01:00
Henrik Rydgård
5df88fc1aa Convert the rect implementation to CrossSIMD 2024-12-21 14:28:01 +01:00
Henrik Rydgård
73ae6da757 Reimplement the depth rasterizer with SIMD. 2024-12-21 14:28:00 +01:00
Henrik Rydgård
399570e411 CrossSIMD: make the transpose function compatible with ARM32 2024-12-21 14:28:00 +01:00
Henrik Rydgård
2051d55c90 CrossSIMD: Add a bunch more functonality for use by the rasterizer 2024-12-21 14:28:00 +01:00
Henrik Rydgård
d1b50ea543 Comment 2024-12-21 14:28:00 +01:00
Henrik Rydgård
ad1809875a Minor sign check optimization 2024-12-21 14:28:00 +01:00
Henrik Rydgård
f886578c0e DepthRaster: Fix backface culling 2024-12-21 14:28:00 +01:00
Henrik Rydgård
a344d0225f DepthRaster: Fix bug where we used the wrong vertex count. 2024-12-21 14:28:00 +01:00
Henrik Rydgård
65692d036e CrossSIMD: possible buildfix? 2024-12-21 14:28:00 +01:00
Henrik Rydgård
820e7369b9 Speed up DepthRasterClipIndexedTriangles with CrossSIMD 2024-12-21 14:28:00 +01:00
Henrik Rydgård
67078d439b Depth raster: Switch to a SoA data layout for the screen space verts 2024-12-21 14:28:00 +01:00
Henrik Rydgård
0b009c10be CrossSIMD: Add reciprocal, clamp, swaplowerelements, etc 2024-12-21 14:28:00 +01:00
Henrik Rydgård
6a1010afb0 Use CrossSIMD to optimize DecodeAndTransformForDepthRaster
Checked the output, the generated assembly is great!
2024-12-21 14:28:00 +01:00
Henrik Rydgård
03b9f98055 Add more funcionality to CrossSIMD.h, like fast matrix mul and some conversion 2024-12-21 14:28:00 +01:00
Henrik Rydgård
de45960420 Reformat CrossSIMD.h for easier editing. Add some new methods. 2024-12-21 14:28:00 +01:00
Henrik Rydgård
bdf4b69207 Warning fixes, minor cleanup 2024-12-21 14:28:00 +01:00
Henrik Rydgård
bdb5f3a91b Reorganize the depth vertex pipeline for future optimizations 2024-12-21 14:27:59 +01:00
Henrik Rydgård
dd31518272 DepthRaster: Merge the decode and transform steps 2024-12-21 14:27:59 +01:00
Henrik Rydgård
c7f0eabc65 DepthRaster: Premultiply world-view-proj matrices 2024-12-21 14:27:59 +01:00
Henrik Rydgård
c92b3b6521 Move prototype cross simd wrapper structs to CrossSIMD.h 2024-12-21 14:27:59 +01:00
Henrik Rydgård
72c954d8c3 Add convenient wrappers 2024-12-21 14:27:59 +01:00