Henrik Rydgård
d51d1413a3
DrawEngineCommon: Rename decoded to decoded_
2023-05-23 16:46:43 +02:00
Henrik Rydgård
0e2fb13c61
Make sure we never end up with a null vertex decoder.
2023-05-03 22:22:54 +02:00
Henrik Rydgård
16b243b007
Centralize allocation of vertex decode buffers
2023-04-24 12:11:58 +02:00
Unknown W. Brackets
9c21184352
vertexjit: Simplify CPU core check.
...
This also avoids allocating the memory we won't use if it's off.
2023-02-28 07:03:12 -08:00
Henrik Rydgård
e1a48d74c4
A bit more GetPointer cleanup.
...
Probably not worth it for performance reasons, but some semantic cleanup
is good, especially the accidental GetPointer -> writable casts without
using GetPointerWrite.
Using Unchecked on already checked pointers, or when we'd crash anyway
if it returned nullptr, is good for clarity.
2023-01-10 12:13:47 +01:00
Unknown W. Brackets
6e8aad727b
GPU: Prevent GE_PRIM_INVALID on flush.
...
Wasn't enough to set prim temporarily here.
2022-12-18 07:23:58 -08:00
Unknown W. Brackets
a7b7bf7826
Global: Set many read-only params as const.
...
This makes what they do and which args to use clearer, if nothing else.
2022-12-10 21:13:36 -08:00
Henrik Rydgård
e6f0f84a45
SSE optimize Float4ToUint8x4, some uses
2022-12-01 16:32:23 +01:00
Unknown W. Brackets
527947fd81
GPU: Correct softgpu curve issue.
2022-11-06 09:06:07 -08:00
Unknown W. Brackets
6c36f03a0d
GPU: Purify vertTypeIsSkinningEnabled().
2022-11-06 08:40:54 -08:00
Unknown W. Brackets
66472c39ce
GPU: Use skinned position always in bounding check.
...
Meanwhile, move to a flag on decoder options instead of global check.
2022-11-06 08:23:31 -08:00
Unknown W. Brackets
a5d3af9cb0
GPU: Cleanup GetVertTypeID() usage.
2022-11-06 08:01:57 -08:00
Unknown W. Brackets
add2edcab8
VR: Always pass the bounding box check.
...
Likely better to draw all objects, even if they wouldn't have been on
screen, for VR purposes.
2022-10-22 16:52:02 -07:00
Unknown W. Brackets
261f1e13db
GPU: Account for scissor/viewport in bound test.
...
The bounding box check doesn't check against viewport (which the PSP
generally doesn't clip against), but instead checks against the scissor.
If the scissor doesn't fit inside the offset 4096x4096 box, that direction
is cannot fail the test.
2022-10-22 16:52:02 -07:00
Unknown W. Brackets
93ee82d84f
GPU: Respect depth clamp in bounding box check.
...
Although, logically, this feels reversed - it rejects the point if it's
outside positive Z, which would clamp. This matches PSP tests.
2022-10-22 16:05:30 -07:00
Unknown W. Brackets
8b80c5fb28
GPU: Allow/use indices in bounding box check.
...
Not sure any games actually use this, but it's supported.
2022-10-22 16:05:29 -07:00
Unknown W. Brackets
6ddf22487b
GPU: Correct bounding box for larger counts.
...
Matches tests on a PSP with float/transform format.
2022-10-22 16:05:29 -07:00
Henrik Rydgård
30aa07b156
Two more renames to make things read better
2022-10-17 08:47:05 +02:00
Henrik Rydgård
9b8a5d1db3
Rename GPU_SUPPORTS_ to GPU_USE_
2022-10-17 08:47:03 +02:00
Henrik Rydgård
daca0b2109
Rename gstate_c.Supports to gstate_c.Use
2022-10-17 08:46:37 +02:00
Henrik Rydgård
e538f5a441
Better bit scrambling when computing draw call IDs for vertex cache.
...
Fixes #13324
2022-09-27 10:09:52 +02:00
Unknown W. Brackets
9f84cde062
GPU: Fix crash on imm vert triangles.
...
Was crashing because the frag and vert shaders didn't match up.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
6877ff1af2
softgpu: Fix state/continuation for imm prims.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
596b07bd2e
softgpu: Support fog and color1 on imm verts.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
35ba01e01f
softgpu: Refactor imm draws to bypass vert read.
2022-09-18 06:16:25 -07:00