Commit Graph

3013 Commits

Author SHA1 Message Date
Henrik Rydgård
7738899434 Fix triangle strip vertex order to have a consistent provoking vertex 2024-07-17 16:12:03 +02:00
Henrik Rydgård
096985f51f Provoking vertex (software transform): Simpler solution
Simply rotate each primitive in the index buffer to simulate a different provoking vertex.

Since at this point we have already generated a plain primitive index
buffer, it's easy to manipulate like this.

An even better solution would be to generate rotated index buffers
directly during decode, although that code is super critical and does
not need more complexity..

We could now also enable this for hardware transform but I'm leaving
that for later.
2024-07-17 14:40:52 +02:00
Henrik Rydgård
6b1e57a840 We never draw non-indexed in software transform mode, so get rid of the path. 2024-07-17 14:40:52 +02:00
Henrik Rydgård
665f03ff62 Add provoking vertex to caps, flip the flag around 2024-07-17 14:40:52 +02:00
Henrik Rydgård
138193a776 Add support for the EXT_provoking_vertex Vulkan extension, allowing us to skip software transform for this case. 2024-07-17 10:41:25 +02:00
Henrik Rydgård
e01ca5b057 Logging API change (refactor) (#19324)
* Rename LogType to Log

* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.

* Mac/ARM64 buildfix

* Do the same with the hle result log macros

* Rename the log names to mixed case while at it.

* iOS buildfix

* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Lubos
a9b5a4739e Fix math of simple stereo 2024-06-25 16:06:03 +02:00
Luboš V
27152b1e47 OpenXR - Forgotten usages 2024-06-24 19:43:17 +02:00
Luboš V
dd9bc42b0a OpenXR - Remove multiview from shader 2024-06-24 19:24:46 +02:00
Henrik Rydgård
ef91fa8b4f Fix code typo in NEON reinterpret cast.
Fixes #19258
2024-06-08 21:25:44 +02:00
Henrik Rydgård
8d6e96d04e Use binary search to find IR block offsets 2024-06-07 09:28:27 +02:00
Henrik Rydgård
c794f4bd41 Add an unrelated comment and some casts 2024-06-05 08:35:09 +02:00
Henrik Rydgård
6ce087430b JIT-less vertex decoder: SSE/NEON-optimize ComputeSkinMatrix 2024-06-04 12:29:16 +02:00
Henrik Rydgård
083656fcc0 Merge pull request #19241 from hrydgard/optimize-vertex-dec
Optimize color conversions in non-JIT vertex decoder
2024-06-04 12:07:09 +02:00
Henrik Rydgård
9ac7054b01 Vertex decoder (non-JIT): Optimize 16-bit color decoders. 2024-06-04 10:35:31 +02:00
Lubos
7b089effa0 OpenXR - Use single VR projection matrix 2024-06-03 18:29:06 +02:00
Henrik Rydgård
7a32507ab7 Add a decode counter to vertex decoders in _DEBUG mode 2024-06-02 10:25:05 +02:00
Henrik Rydgård
87ead3f492 Fix bad framebuffer bind in Parappa The Rapper 2024-05-29 12:23:54 +02:00
Henrik Rydgård
6ed8f96e98 Indentation fix 2024-05-11 20:36:51 +02:00
Henrik Rydgård
fb599cd0a6 Only use the optimized decoders if SSE or NEON is available. 2024-05-11 14:18:42 +02:00
Henrik Rydgård
6452ce8ac5 NEON-optimize the GTA vertex decoder too. 2024-05-11 14:13:29 +02:00
Henrik Rydgård
4a66f8978b Fix the GoW optimized vertex decoder, add NEON optimizations 2024-05-11 13:27:11 +02:00
Henrik Rydgård
bafff7f5db Temporarily disable the custom GoW vertex decoder, it needs some work. 2024-05-11 11:11:48 +02:00
Henrik Rydgård
3526416173 Add another handwritten vertex decoder 2024-05-11 10:00:39 +02:00
Henrik Rydgård
81f1b3fd95 Make handwritten vertex decoders work with non-compiled vertex decoding 2024-05-11 10:00:35 +02:00