Henrik Rydgård and Claude Opus 5.5
1fe8071875
Vulkan: Apply the texture LOD bias in the shader where samplers ignore it
...
MoltenVK doesn't support a sampler mipLodBias (the portability subset's
samplerMipLodBias is false), so the PSP's LOD bias did nothing on Mac and
iOS, and biased textures came out a mip level blurrier than on OpenGL and
the PSP: MLB's signs and crowd, Burnout Legends, MediEvil, Ridge Racer 2.
Query the portability subset, and where the bias is missing, pass the auto
mode bias to texture() from a uniform instead.
VK_ENABLE_BETA_EXTENSIONS, which declares the portability subset, is now
defined for App Store iOS builds too.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-10 01:04:23 +02:00
Henrik Rydgård and Claude Opus 5.5
a26ef51a0c
GE dump playback: Restore old-layout contexts from old dumps
...
Dumps recorded before savedContextVersion 1 hold PPSSPP's old context layout, with the matrices
as raw floats, but GEState::Restore picks the layout from savedContextVersion, which only a
savestate sets. Playback restored them as the new layout, so the matrices became garbage and
the scene vanished (4140 drew only its HUD). Tell the layouts apart by the END the new one ends
with, as the PSP replayer does. Other callers are unchanged.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
2026-10-08 18:37:32 +02:00
Henrik Rydgård
10a5d2f810
OpenGL: Improve checks for fragment shader float precision.
...
Fixes #22001 (although there may be other artifacts).
2026-07-30 10:03:15 +02:00
Henrik Rydgård
92ec6a992b
Remove "pixelMapped" from gstate_c.
2026-07-16 17:45:22 +02:00
Henrik Rydgård
cd40e2d4f0
Delete more code related to hardware skinning
2026-07-14 17:17:40 +02:00
Henrik Rydgård
18a9de3eca
Move AdvanceVerts to GPUStateCache
2026-07-14 15:28:21 +02:00
Henrik Rydgård
db712016bb
Comment improvements, rename a dirty-flag
2026-07-13 11:10:31 +02:00
Henrik Rydgård
90c48671d7
D3D11: Remove support for BGRA textures and preferred framebuffer formats
2026-07-03 16:20:22 +02:00
Henrik Rydgård
6d2948a09b
Remove the cached UVScale in gstate_c. Conversion is cheap enough to do directly from gstate, no point in caching.
2026-07-03 13:17:35 +02:00
Henrik Rydgård
1b2f87bf1a
Rename GPUgstate to GEState
2026-07-02 20:34:09 +02:00
Henrik Rydgård
ebc564a465
Centralize handling of another GPU flag
2026-06-27 13:50:03 +02:00
Henrik Rydgård
d2f1193afc
Remove another unused GPU_USE_* flag
2026-06-27 13:19:13 +02:00
Henrik Rydgård
a4d21d23bb
Remove some remains of HW tessellation
2026-06-26 18:53:35 +02:00
Henrik Rydgård
623545bd24
Delete the "Hardware tessellation" feature.
...
Very hard to maintain and debug, not worth it.
2026-06-16 16:17:14 +02:00
Henrik Rydgård
40a345bff8
Fix a filtering issue, enable this for Fushigi no Dungeon 4.
2026-06-12 23:52:50 +02:00
Henrik Rydgård
0bf1d12053
Prepare for shader depal (CLUT palette lookup) for ordinary textures
2026-06-11 11:58:58 +02:00
Henrik Rydgård
83d82dcf66
Shader depal: Don't generate a big switch in the shader, generate specialized shaders instead.
2026-06-10 12:22:11 +02:00
Henrik Rydgård
5265422c0e
Remove the old "Fragment ubershader" setting. It's been on by default for years and is not really an ubershader.
2026-06-10 09:54:52 +02:00
Henrik Rydgård
ce7da78b17
Invalidate texture hashes on readbacks
2026-06-09 23:49:54 +02:00
Henrik Rydgård
1781f693b5
Implement the new SyncDomain concept for texture hashing, remove minihash
2026-06-09 23:49:54 +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
1624a6da83
Delete some old now-unused variables, and remove an accidental use.
2026-06-03 13:28:40 +02:00
Henrik Rydgård
a317890c08
Remove the GPUDebugInterface class
...
Just a pointless extra layer in the class hiearchy, making it
unnecessarily hard to modify the interface.
Might as well hit GPUCommon directly.
2026-06-02 11:15:08 +02:00
Henrik Rydgård
2a5c2fa477
Check if the viewport transform matches the clip space. If so we can skip the near clip plane.
2026-05-30 19:07:59 +02:00
Henrik Rydgård
189dde8115
Cache the cull matrix. Minor bbox optimization.
2026-05-30 19:07:59 +02:00
Henrik Rydgård
0b47955c64
Delete geometry shader culling support. Is mostly replaced, and will be fully replaced with software transform.
2026-05-30 19:07:59 +02:00
Henrik Rydgård
5808afef10
Implement minZ/maxZ through user clip planes
2026-05-30 19:07:58 +02:00
Henrik Rydgård
ae98055cec
Delete a lot of legacy depth and viewport code, fix OpenGL
2026-05-30 19:07:58 +02:00
Henrik Rydgård
62d8cf22de
Move the viewport transform to software in SW transform mode
...
transform fix
2026-05-30 19:07:58 +02:00
Henrik Rydgård
f60e27a9b7
Just some refactoring of the GPUStatistics struct, and more use of StringWriter
2026-05-29 14:40:31 +02:00
Henrik Rydgård
dd125b2e4d
Delete obsolete (and non-working) support for GPUs without non-pow-2 textures.
2026-05-24 14:15:34 +02:00
Henrik Rydgård
fa856fbf68
Pass the culling unit tests.
2026-05-23 14:40:15 +02:00
Henrik Rydgård
5cfbf50111
Keep updated products of view*proj and world*view*proj matrices. Use to simplify bbox culling.
2026-05-21 19:18:32 +02:00
Henrik Rydgård
4b93a870db
Optimize out pre-rotation entirely from vertex shaders when not needed
2026-05-17 11:01:50 +02:00
Henrik Rydgård
afb764e6ae
Rendering: Unify the Y-flipping state across backends (now only applied in-shader, not through matrices).
2026-05-14 23:30:06 +02:00
Henrik Rydgård
85de7fdc50
Add new flag that will simplify the GL path
2026-05-14 22:20:35 +02:00
Henrik Rydgård
d6ebfed432
Fix some bugs and warnings from a pass of static analysis
2026-01-29 17:41:54 +01:00
Henrik Rydgård
732288c03a
Brave Story: Hack to make the bloom effect run much more efficiently.
...
Fixes #19820
Not ready for merge, it needs more checks and maybe a compat flag.
2026-01-23 23:13:04 +01:00
Henrik Rydgård
64461329e7
More minor fixes and cleanups
2026-01-02 14:20:20 +01:00
Henrik Rydgård
4e0b6ac3ec
More misc cleanup
2025-05-14 15:14:03 +02:00
Henrik Rydgård
3e0fea509d
Improve sanity checks for vertex ranges in GPU
2025-05-14 09:39:14 +02:00
Henrik Rydgård
8accc57df7
Avoid using shader blending (with framebuffer copy) if skip-buffer-effects is enabled
...
Fixes #20267
2025-04-17 19:18:59 +02:00
Henrik Rydgård
72ea4c7695
Add some missing file formats to File Open dialog (SDL). Minor unrelated cleanups.
2025-04-11 09:21:27 +02:00
Henrik Rydgård
f886578c0e
DepthRaster: Fix backface culling
2024-12-21 14:28:00 +01:00
Henrik Rydgård
e93c80db4e
Cleaning up our SIMD header includes, using the new header
2024-12-19 16:08:48 +01:00
Herman Semenov
b57dab2812
[GPU] Make static and const methods if possible
2024-04-05 17:04:31 +03:00
Henrik Rydgård
103d8b1019
Don't apply smart 2d texture filter to video.
2024-01-18 23:38:44 +01:00
Henrik Rydgård
341fe04f4b
Apply nearest filter for pixel-mapped draws
2024-01-11 12:56:03 +01:00
Henrik Rydgård
e488189723
Inline UpdateUVScaleOffset
2023-12-21 12:10:10 +01:00
Henrik Rydgård
f4b0cddda3
ShaderId: Safer way to check for backend.
2023-09-18 16:25:00 +02:00