Commit Graph
33319 Commits
Author SHA1 Message Date
Lubos fea2ace548 OpenXR - Initial work on Vulkan support 2022-09-13 01:39:44 +02:00
Lubos c6ff56d4a3 OpenXR - Crash when using 3D stereo fixed 2022-09-12 22:55:53 +02:00
Lubos 4b93dc031c OpenXR - Requested header change in compatvr.ini 2022-09-12 21:28:08 +02:00
Lubos e49ee5c93b Merge branch 'master' into feature_openxr_stereo 2022-09-12 18:49:22 +02:00
Lubos bdde5f0f7f OpenXR - Use per game stereo separation file 2022-09-12 18:47:13 +02:00
Henrik Rydgård 2791ab3226 Merge pull request #16011 from unknownbrackets/softgpu-rect
Detect more triangles as rectangles in softgpu
2022-09-12 08:35:13 +02:00
Henrik Rydgård 9292fd84e2 Merge pull request #16009 from unknownbrackets/softgpu-colors
softgpu: Store vertex colors as packed RGBA8
2022-09-12 08:34:03 +02:00
Unknown W. Brackets 3c9372fb75 softgpu: Ignore stencil test mask in ALWAYS mode.
Small codegen improvement since we can directly use ref and avoid loading
the unmasked reference.
2022-09-11 22:39:56 -07:00
Unknown W. Brackets 1f6870798b softgpu: Include early Z in func description. 2022-09-11 22:39:32 -07:00
Unknown W. Brackets 151727ee01 softgpu: Detect longer strips of rectangles.
Could maybe even combine these into one large rectangle, but the main
benefit is avoiding triangles.
2022-09-11 22:39:32 -07:00
Unknown W. Brackets 288d18447d softgpu: Detect full triangles as rectangles.
Seen in a dump from Infected, improves FPS ~25% there.
2022-09-11 22:39:32 -07:00
Unknown W. Brackets ce4fee7373 softgpu: Refactor triangle cull processing. 2022-09-11 22:39:32 -07:00
Unknown W. Brackets 8a6e8066bf softgpu: Store vertex colors as packed RGBA8.
No need to keep it expanded at 4x the space for both colors.
2022-09-11 18:41:06 -07:00
Unknown W. Brackets 8a2115be46 softgpu: Enable early Z tests a bit more often.
This helps in cases where sfail doesn't matter.
2022-09-11 18:39:39 -07:00
Unknown W. Brackets 5f2e20d8ca softgpu: Reduce some minor bin item field sizes. 2022-09-11 18:39:14 -07:00
Henrik Rydgård c37049fa14 Merge pull request #16007 from unknownbrackets/gedebugger
GE Debugger: Add fields to register expressions
2022-09-12 00:15:06 +02:00
Henrik Rydgård 37c733c969 Merge pull request #16008 from unknownbrackets/readme
README: Move some older releases to history
2022-09-12 00:10:17 +02:00
Unknown W. Brackets 41c6c81ead README: Move some older releases to history. 2022-09-11 14:38:27 -07:00
Unknown W. Brackets f02e6b8e39 GE Debugger: Add some constants to expressions.
Hard to remember, but at least can be copy/pasted.
Allows for things like "alphatest.func == GREATER".
2022-09-11 13:51:10 -07:00
Henrik Rydgård a6c9546529 Merge pull request #16006 from LunaMoo/compatRewrite
Add Rewrite to DrawSyncEatCycles hack, softlocks without it
2022-09-11 22:22:52 +02:00
Unknown W. Brackets 7d07e4e75d GE Debugger: Add fields to register expressions.
This means a conditional breakpoint can now use, for example,
vtype.through == 1 to check the through mode flag.

No constants, but this makes it easier to get right.  Would be nice to
have an autocomplete of the field names, of course...
2022-09-11 13:09:03 -07:00
LunaMoo d25602f01b Add Rewrite to DrawSyncEatCycles hack, softlocks without it 2022-09-11 21:47:07 +02:00
Unknown W. Brackets 55c70332a1 GE Debugger: Eval breakpoints as if register set. 2022-09-11 11:05:30 -07:00
Unknown W. Brackets aa377662dd GE Debugger: Provide addrs in breakpoint conds.
Easier to just refer to the full address.
2022-09-11 10:57:04 -07:00
Henrik Rydgård 75efcd9dfd Merge pull request #16000 from unknownbrackets/gedebugger
Cleanup some crashes in GE debugger or with large textures
2022-09-11 19:41:11 +02:00
Henrik Rydgård b3ba77152f Merge pull request #16004 from hrydgard/shader-depal-d3d11
Implement shader depal for D3D11, texture match refactorings
2022-09-11 19:34:11 +02:00
Henrik Rydgård cf959a8467 Remove CLUT matching case that shouldn't be there yet. 2022-09-11 19:33:31 +02:00
Henrik Rydgård 46500c8b6a Merge pull request #16005 from unknownbrackets/softgpu-fog
softgpu: Correct accuracy of fog calculation
2022-09-11 18:20:50 +02:00
Unknown W. Brackets 8c55e18ea8 softgpu: Switch vert continue buffer to members.
Better this than static.  May be easier to handle imm prims correctly.
2022-09-11 08:54:34 -07:00
Unknown W. Brackets e72309745e softjit: Implement accurate fog color blending. 2022-09-11 08:50:07 -07:00
Unknown W. Brackets b90fc7137f softgpu: Correct accuracy of fog calculation.
This matches values from a PSP exactly, with the help of immediate mode
vertex values (since this directly allows specifying the fog factor
without any floating point math.)
2022-09-11 08:24:40 -07:00
Unknown W. Brackets 2e3b73abaa softgpu: Restrict sprite fast path to throughmode.
Its UV checks already should have generally, but let's be safe.  It
doesn't validate state like fog, etc.
2022-09-11 08:22:37 -07:00
Henrik Rydgård 3e7f6b57aa Shadergen issues found by the test 2022-09-11 16:52:33 +02:00
Henrik Rydgård a30896e21f Switch more texture matching calculations to use bytes for matching. 2022-09-11 16:52:30 +02:00
Henrik Rydgård 4491c480a6 Texture/framebuffer matching: Do margin check in bytes. 2022-09-11 16:18:04 +02:00
Henrik Rydgård 694dbe1271 Add ShaderDepalMode enum, use in shader ID. Replaces smoothed bit. 2022-09-11 14:40:01 +02:00
Henrik Rydgård 9bd8b11bf8 Implement shader depal for D3D11. 2022-09-11 13:41:17 +02:00
Henrik Rydgård 35c9cbd6b0 Merge pull request #16003 from hrydgard/clut-download-compat
CLUT download: Replace the backwards block transfer check with a new compat flag
2022-09-11 12:20:25 +02:00
Henrik Rydgård 5e6b064835 DownloadFramebufferForCLUT: Apply the fix mentioned in #8590 2022-09-11 10:30:43 +02:00
Henrik Rydgård 33a93e238a CLUT download: Replace the broken block transfer check with a new compat flag.
This compat flag should be temporary until we've implemented
a readback-free path for CLUTs from framebuffers, both when texturing
from static textures and other framebuffers.
2022-09-11 10:27:21 +02:00
Henrik Rydgård d86127ac5e Merge pull request #15999 from unknownbrackets/softgpu-texsize
softgpu: Clamp/wrap textures at 512 pixels
2022-09-11 10:12:38 +02:00
Henrik Rydgård 37b51393a8 Merge pull request #16002 from unknownbrackets/softgpu-vertexdec
vertexjit: Use consistent skinInDecode
2022-09-11 10:11:02 +02:00
Henrik Rydgård 04c02340f1 Merge pull request #15998 from unknownbrackets/softgpu-rect
softgpu: Allow almost flat rectangles to go fast
2022-09-11 08:54:04 +02:00
Henrik Rydgård d011768cdd Merge pull request #16001 from unknownbrackets/softgpu-earlyz
softgpu: Check depth test early on simple stencil
2022-09-11 08:52:51 +02:00
Unknown W. Brackets 4889d5285d vertexjit: Use consistent skinInDecode.
Just a little cleanup.
2022-09-10 21:54:04 -07:00
Unknown W. Brackets 15d5fa48f7 softgpu: Check depth test early on simple stencil.
If we don't need to write stencil on sfail/zfail, we can do the depthtest
early, which allows us to more often skip texture sampling.

This gives a good improvement in Chains of Olympus.
2022-09-10 21:24:19 -07:00
Unknown W. Brackets 90e009edb9 softgpu: Clamp/wrap textures at 512 pixels.
A texture larger than 512 is "valid", but simply wraps/clamps at 512.
Importantly, the texture coords are still calculated at the specified
size, which can be up to 32768.
2022-09-10 20:23:09 -07:00
Unknown W. Brackets 123d6dbb11 GE Debugger: Correct confusing block transfer size. 2022-09-10 20:17:54 -07:00
Unknown W. Brackets 1056301c95 D3D11: Prevent crash on larger textures. 2022-09-10 20:16:05 -07:00
Unknown W. Brackets 3242bb8d66 TexCache: Allow valid bufw sizes.
These don't cause crashes anymore.
2022-09-10 20:15:43 -07:00