Commit Graph
46164 Commits
Author SHA1 Message Date
crashGG d0193fb82f MMPX Advanced :Fix a subtle bug
Fix a subtle bug,can cause unnecessary glitches
2026-06-09 22:52:31 +03:00
Henrik Rydgård 9489a7176a Merge pull request #21806 from hrydgard/more-texture-refactor
TextureCache: Refactor the texcache struct a bit, for easier changes and smaller size
2026-06-09 15:17:25 +02:00
Henrik Rydgård c300c8fa82 Shrink the TexCacheEntry struct a bit 2026-06-09 11:25:51 +02:00
Henrik Rydgård a38c52601c Turn TexCacheEntry::TexStatus into an enum class 2026-06-09 11:25:51 +02:00
Henrik Rydgård 7ced074154 Rearrange the texture status flags, rename Full alpha to Solid alpha for textures 2026-06-09 11:25:50 +02:00
Henrik Rydgård ec6c7b08f5 Add a common TextureAlpha enum, replacing CheckAlphaResult and ReplacedTextureAlpha. 2026-06-09 11:25:50 +02:00
Henrik Rydgård fdcf923c75 TexCache: Stop bitpacking the hash status into the status flags 2026-06-09 11:25:50 +02:00
Henrik Rydgård 67fb9ffc4e Merge pull request #21805 from hrydgard/texture-refactor-work
Minor texture refactor work, color bugfix
2026-06-09 10:54:25 +02:00
Henrik Rydgård 54d5c1d5e3 Improve some initialization in CrossSIMD.h. Add comments about CLUT variants 2026-06-09 10:15:08 +02:00
Henrik Rydgård f65b3f7a6b Fix LoadU8Norm in CrossSIMD
Caused breakage in the previous PR.
2026-06-08 23:06:41 +02:00
Henrik Rydgård e0a961ddc5 Just some basic code cleanup in TextureCacheCommon. 2026-06-08 22:51:00 +02:00
Henrik Rydgård 2360466cc4 Merge pull request #21804 from hrydgard/more-fixes
Fix SpriteBorderFix problem in GTA, disable anisotropic filtering for flat draws
2026-06-08 16:49:32 +02:00
Henrik Rydgård 2534eb4480 Disable anisotropic filtering for all flat draws.
May improve performance slightly, and should fix the last instances of #19555
2026-06-08 15:28:58 +02:00
Henrik Rydgård 644f1b6caf Fix SpriteBorderFix problem where it was affecting the main render 2026-06-07 19:38:35 +02:00
Henrik Rydgård 3981bf29e8 Merge pull request #21801 from crashGG/mmpx-enhace
Release MMPX Advanced v3.2: Optimize and Clean
2026-06-07 18:13:52 +02:00
crashGG 902b7b7b76 Release MMPX Advanced v3.2: Optimize and Clean
Release MMPX Advanced v3.2: Optimize and Clean

Performance: Optimize topological shape detection to slash GPU ALU cycles.
Maintenance: Strip out verbal debugging commentary and obsolete code notes.
2026-06-07 18:57:29 +03:00
Henrik Rydgård dafbd36b83 Merge pull request #21800 from hrydgard/fix-smart-2d-check
Oops, lost a check for smart 2D texture filtering
2026-06-07 17:39:09 +02:00
Henrik Rydgård 2da3df75d7 Oops, lost a check for smart 2D texture filtering 2026-06-07 17:38:28 +02:00
Henrik Rydgård 52e1fcf48b Merge pull request #21799 from hrydgard/more-misc-changes
Make the MaxZ test a bit more lenient to fix Taiko no Tatsujin
2026-06-07 17:33:56 +02:00
Henrik Rydgård a7f62d763a Make the MaxZ test a bit more lenient to fix Taiko no Tatsujin. Debugger improvement
Fixes #21797
2026-06-07 13:47:42 +02:00
Henrik Rydgård d19f8b72f9 Warning fixes 2026-06-06 14:24:16 +02:00
Henrik Rydgård 8fe3dcdb83 Android: Allow clipdata as input for the file browser.
Fixes #18874
2026-06-06 14:12:57 +02:00
Henrik Rydgård 1b6857751e Merge pull request #21795 from hrydgard/misc
Make the sprite detection work also if Smart 2D texture filter is off
2026-06-06 13:21:08 +02:00
Henrik Rydgård 5bfc87ffd5 Improve the sprite border fix to work with RECTs, add some conditions 2026-06-06 12:31:41 +02:00
Henrik Rydgård cf9c0c5c84 Restructure the sprite detection, no longer require Smart 2D texture filtering to apply 2026-06-06 11:21:46 +02:00
Henrik Rydgård 3ba732d26f Android: Change target SDK to 37 (Android 17) 2026-06-05 21:07:29 +02:00
Henrik Rydgård 015ca5debe Add data.json to some more adhoc servers 2026-06-05 21:07:18 +02:00
Henrik Rydgård ecc35b904a Merge pull request #21792 from hrydgard/fix-another-depth-issue
Fix menus in NBA2K12.
2026-06-05 18:27:23 +02:00
Henrik Rydgård b84afa8a5b Fixes menus in NBA2K12.
Not sure if we can find a better way, I suppose
we could clamp vertex coordinates that are in this range instead, if it
turns out that this somehow breaks something.
2026-06-05 18:23:31 +02:00
Henrik Rydgård 9506f5c470 Merge pull request #21791 from hrydgard/compat-info
Add a debug window to check active compat flags
2026-06-05 18:14:25 +02:00
Henrik Rydgård 45f41be8f0 Add a debug window to check active compat flags 2026-06-05 17:55:28 +02:00
Henrik Rydgård 78a6bd7157 Add DevMenu to the three dots menu on the pause screen 2026-06-05 17:19:06 +02:00
Henrik Rydgård 84677d4cb5 Merge pull request #21788 from hrydgard/more-work
GTA sprite fix: Detect sprites, clip them slightly to avoid filtering artifacts
2026-06-05 12:43:19 +02:00
Henrik Rydgård d59cdcad61 GTA sprite fix: Detect sprites, clip them slightly to avoid filtering artifacts 2026-06-05 11:48:46 +02:00
Henrik Rydgård 928cdea420 Fix vulkan validation error after #21616
See #21616
2026-06-05 10:09:23 +02:00
Henrik Rydgård f9bf58f8b0 Merge pull request #21616 from jasaaved/borderless-fullscreen
Windows Vulkan: default to borderless fullscreen, add exclusive option
2026-06-05 09:54:46 +02:00
Henrik Rydgård 7d7985ec3b Merge pull request #21787 from hrydgard/depth-round-15-bit
Truncate depth to 15 bits when our compatibility flag for depth rounding is set
2026-06-05 01:50:29 +02:00
Henrik Rydgård 9ce5270e80 With our compatibility flag for depth rounding, truncate to 15 bits.
This matches some earlier test results by Unknown where we could see
that only every second value was used, and is the only explanation I can
come up with for the Afterburner problem, having now traced all the
depth math properly.

Fixes #21785 - and hopefully doesn't break anything else.
2026-06-05 00:50:30 +02:00
Henrik Rydgård ca4eb8e95e Merge pull request #21786 from hrydgard/depth-cull-fix
Apply the correct culling epsilons both in fastcull and in software transform
2026-06-05 00:49:43 +02:00
Henrik Rydgård 19d6850789 Apply the correct culling epsilons both in fastcull and in software transform. Fixes NBA again. 2026-06-05 00:18:06 +02:00
jasaaved 95006cf1d3 Changed bFullScreenExclusive to bAllowFullScreenExclusive
There's no guarantee VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT will enter Fullscreen exclusive (FSE). Under the right conditions, the driver and/or DWM can grant FSE. Adding "allow" to the FSE setting should make this a bit clearer.
2026-06-04 12:54:52 -07:00
Henrik Rydgård 392a862be2 Merge pull request #21784 from hrydgard/smarter-2d-filter
Smart 2D texture filtering: Use the new vertex path to check for pixel mapping in transformed geometry
2026-06-04 17:24:40 +02:00
Henrik Rydgård 169f473b95 Smart 2D texture filtering: Use the new vertex path to check for pixel mapping in transformed geometry
Previously, "Smart 2D texture filtering" was limited to through-mode
draws, but many games use fully transformed draws to do 2D elements.

An example of this is Outrun in the menus, and it's always been plagued by
horrible filtering artifacts.

With the improved Smart 2D texture filtering, the artifacts are gone!
Of course, instead of glitchy bilinear you instead get point sampled
texturing so it looks more pixellated, but no more ugly borders between letters
in the game.
2026-06-04 17:04:04 +02:00
Henrik Rydgård 420537b32c Merge pull request #21783 from hrydgard/clipping-compat-flag
Avoid soft-transform-and-clip if the near plane matches the final clip plane, and a new compat flag isn't set
2026-06-04 15:55:23 +02:00
Henrik Rydgård 1867f0775e Avoid soft-transform-and-clip if the near plane matches the final clip plane, and a new compat flag isn't set
Fixes #21776

Since only two games are known to need the cull-after-clip behavior
(previously known as inversion), we flag those and avoid unnecessary
soft clipping.

I had hoped to find a dynamic check that would work, but haven't managed
to figure out a good one yet.

This will improve performance a little bit in some other games since we
can avoid clipping in software at all in many cases.
2026-06-04 14:49:22 +02:00
Henrik Rydgård 791978b0e9 Merge pull request #21782 from hrydgard/software-transform-work
Software transform code cleanup
2026-06-04 14:25:03 +02:00
Henrik Rydgård 61a2d78930 Buildfix 2026-06-04 14:02:12 +02:00
Henrik Rydgård 50e5f9c23a Small simplification and fix in VertexShaderGenerator 2026-06-04 12:45:20 +02:00
Henrik Rydgård 195455a7f4 Break out VertexReader, prepare VertexReader for CrossSIMD use in software transform 2026-06-04 12:45:17 +02:00
Henrik Rydgård 7e265fd1c4 Remove some obsolete compat.ini settings 2026-06-04 12:45:17 +02:00