Commit Graph
8086 Commits
Author SHA1 Message Date
Unknown W. Brackets 0c19f6ae1d Merge pull request #16484 from lvonasek/compat_openxr_fixes
OpenXR - HUD support for even more games
2022-12-02 14:03:23 -08:00
Henrik Rydgård 116bc9d59a Merge pull request #16485 from unknownbrackets/softgpu-fog-nan
softgpu: Handle infnan fog coefficients better
2022-12-02 19:49:32 +01:00
Unknown W. Brackets 1121a6fb68 softgpu: Handle inf-end + negative constant slope. 2022-12-02 10:20:30 -08:00
Unknown W. Brackets 38de2f11af softgpu: Handle infnan fog coefficients better.
If we ended up with a dot product that had opposing inf signs, the add
would result in NAN and cause problems.
2022-12-02 10:15:15 -08:00
Unknown W. Brackets c5844c4174 GE Debugger: Add breakpoint symbol for prim count.
This way you can break when a register is changed and prim count is in a
certain range, which can be convenient.
2022-12-02 10:14:36 -08:00
Lubos 39c399df47 OpenXR - GTA Chinatown wars rendering fixed 2022-12-02 17:53:03 +01:00
Lubos 769b1d7342 OpenXR - Assasins Creed rendering fixed 2022-12-02 17:45:29 +01:00
Lubos 66cbe55ffc OpenXR - Tony Hawk HUD fixed 2022-12-02 16:47:26 +01:00
Lubos 1e2cf07c6b OpenXR - Monster Hunter HUD fixed 2022-12-02 15:16:41 +01:00
Henrik Rydgård a349e2b85b Merge pull request #16481 from unknownbrackets/gedebugger
Cleanup some GE debugger logspam, small texture proj optimization
2022-12-02 11:10:49 +01:00
Unknown W. Brackets 106d730a20 GPU: Optimize out common case texture proj.
NFS Most Wanted 5-1-0 uses this when it could use uv scale/offset.
2022-12-01 23:20:25 -08:00
Unknown W. Brackets 33abbca464 softgpu: Optimize out texture proj for UVs.
Seen in NFS Most Wanted 5-1-0.
2022-12-01 23:13:20 -08:00
Unknown W. Brackets d7224a8401 GE Debugger: Cleanup logspam on game exit.
If you're stopped on a frame and quit, it was previously logging every
command as it exited, thinking it was waiting on each.
2022-12-01 23:12:14 -08:00
Unknown W. Brackets c5a98e62dd softgpu: Cull verts outside post-viewport Z.
Shouldn't have removed this before, points are still culled when depth
clamp is off and throughmode is off.

Fixes Crazy Taxi graphics glitches.
2022-12-01 21:57:48 -08:00
Unknown W. Brackets a1f6a40d10 softgpu: Interpolate Z for 3D lines.
Important for Me & My Katamari, see #16131.
2022-12-01 14:39:19 -08:00
Unknown W. Brackets 4866518b84 Merge pull request #16477 from hrydgard/invalidation-refactor
Add a flags parameter to InvalidateCachedState and rename it Invalidate.
2022-12-01 11:05:04 -08:00
Henrik Rydgård 331d024a8c Add a flags parameter to InvalidateCachedState and rename it Invalidate.
Also rename the old InvalidationFlags enum to InvalidateCallbackFlags.
2022-12-01 19:15:38 +01:00
Lubos 2be8f46a0c Merge branch 'master' into compat_openxr_fixes 2022-12-01 18:26:26 +01:00
Henrik Rydgård e6f0f84a45 SSE optimize Float4ToUint8x4, some uses 2022-12-01 16:32:23 +01:00
Henrik Rydgård d02f46cb27 Minor VertexReader optimizations 2022-12-01 16:00:47 +01:00
Henrik Rydgård 423fa6d848 Couple more FormatMemWriteTagAt 2022-12-01 16:00:47 +01:00
Henrik Rydgård 6560123257 Restore optimization of memory info strings, avoiding allocations 2022-12-01 15:39:45 +01:00
Henrik Rydgård 40ae99073b Remove std::string from VulkanTexture 2022-12-01 12:17:03 +01:00
Unknown W. Brackets 5bc51cb01d GE Debugger: Remove dup block transfer record.
We already record it as a block transfer, we don't need to also do it as a
memcpy.
2022-12-01 01:36:27 -08:00
Unknown W. Brackets 73489349cc GPU: Oops, simplify an expression. 2022-12-01 01:34:48 -08:00
Unknown W. Brackets cbe96d3774 GPU: Use common block transfer logic in all cases. 2022-12-01 01:34:16 -08:00
Unknown W. Brackets 3589c1e826 softgpu: Handle block transfer VRAM wrapping.
Note: mirrors still act as mirrors, swizzle and all.
2022-12-01 01:31:44 -08:00
Unknown W. Brackets 1c5f0d575c softgpu: Improve meminfo detail on block transfer.
Gaps are useful to understand.
2022-12-01 01:31:44 -08:00
Unknown W. Brackets 68515aaee2 softgpu: Account for width!=stride in xfer checks. 2022-12-01 01:31:43 -08:00
Unknown W. Brackets 2adc18cfba softgpu: Correct src/dst overlap in block transfer.
If dest is inside src, it seems to consistently copy in blocks of 64
bytes.
2022-12-01 01:31:43 -08:00
Henrik Rydgård c3aaf5b184 Merge pull request #16472 from unknownbrackets/fetch-fix
GLES: Correct unit tests for framebuffer fetch
2022-12-01 10:16:45 +01:00
Henrik Rydgård 4b7084401d Merge pull request #16470 from unknownbrackets/softgpu-inversion
softgpu: Correctly fix inversions, matching tests
2022-12-01 09:59:56 +01:00
Unknown W. Brackets fc5dcd0c16 GLES: Correct unit tests for framebuffer fetch. 2022-12-01 00:59:22 -08:00
Unknown W. Brackets d763dca024 GPU: Correct fetch assert. 2022-12-01 00:17:14 -08:00
Unknown W. Brackets dc962094f8 softgpu: Correctly fix inversions, matching tests.
Inversions are allowed just fine, but if clipping results in coordinates
outside range, the triangle should be culled.  Fixes more wanted
inversions.
2022-11-30 23:20:39 -08:00
Lubos 09d48075bc Merge branch 'master' into compat_openxr_fixes 2022-11-30 22:00:33 +01:00
Henrik Rydgård f4385e1bea Merge pull request #16456 from hrydgard/soft-gpu-range-checks
SoftGPU: Range check block copies.
2022-11-30 14:56:15 +01:00
Henrik Rydgård d72ad3b3f4 Fragment shader generator: Move the framebuffer fetch bit to the shader ID.
Will resolve a future issue in the multisampling PR, where the
GPU_USE_FRAMEBUFFER_FETCH flag changes at runtime if you switch between no AA and MSAA.

Just figured I'd get it in separately for safety.
2022-11-30 00:26:15 +01:00
Lubos de78007e66 OpenXR - Enable HUD in a few more games 2022-11-29 22:17:12 +01:00
Lubos 812c7d13aa OpenXR - HUD disappearing in Flatout fixed 2022-11-29 21:25:13 +01:00
Henrik Rydgård 390bf3e912 Fix Burnout Dominator lens flare on OpenGL ES
Not the prettiest solution, but works: Use R8_UNORM as a fallback
if R16_UNORM is not available.
2022-11-29 13:05:18 +01:00
Lubos d466ae161a OpenXR - HUD max scale fixed 2022-11-28 19:46:46 +01:00
Lubos 164c27f5ec OpenXR - Screen stretching fixed 2022-11-28 19:25:13 +01:00
Henrik Rydgård 9bb0c91a75 Sneak in a minor software transform optimization 2022-11-28 11:10:50 +01:00
Henrik Rydgård 6c8ccc149e Stop logspam from bad block transfer corners. 2022-11-28 10:46:45 +01:00
Henrik Rydgård 3246baec4b SoftGPU: Range check block copies.
Needs testing to verify if we should copy zeroes instead if the src range is
partial, etc, quite a few possible edge cases.

Though on its own, this probably fixes the crash in #16427.

Still don't understand why that one has issues in hardware renderers
though since they do bounds-check the copies.
2022-11-28 10:39:46 +01:00
Henrik Rydgård ed151473c2 Merge pull request #16454 from unknownbrackets/fb-depal-fb
GPU: Support framebuf depal from rendered CLUT
2022-11-28 09:47:22 +01:00
Henrik Rydgård 06b7fb9a6a Merge pull request #16452 from unknownbrackets/gedebugger
GE Debugger: Correct LastVRAM mirror wrap around
2022-11-28 08:02:09 +01:00
Unknown W. Brackets 9425d0670a GPU: Prevent decimating CLUT framebuffers.
Fixes color changing after a few moments in Kurohyo.
2022-11-27 21:24:02 -08:00
Unknown W. Brackets a7c4258e9f GPU: Support framebuf depal from rendered CLUT.
Using a temporary always for simplicity.
2022-11-27 21:16:24 -08:00