Henrik Rydgård
906a04f1fd
Make sure to not leave cull distance uninitialized in other paths, if we do write to it in some path.
2021-10-26 09:56:38 +02:00
Unknown W. Brackets
09f0578a64
Replacement: Use a thread to load tex replacements.
2021-10-21 17:05:39 -07:00
Unknown W. Brackets
ee882d1861
Replacement: Avoid rebuild until ready.
2021-10-21 17:05:38 -07:00
Unknown W. Brackets
0721405628
Replacement: Avoid clash with X define.
2021-10-21 17:05:38 -07:00
Unknown W. Brackets
83b7b33cfd
Replacement: Centralize lookup logic.
...
And make sure we don't change our minds about using a replacement during a
draw.
2021-10-21 17:05:38 -07:00
Unknown W. Brackets
36fc2c2628
Replacement: Purge old cached decoded textures.
...
Not actually decoding into the cache, just setup.
2021-10-21 17:05:38 -07:00
Unknown W. Brackets
2356280a9c
Replacement: Add structure for delayed loading.
2021-10-21 17:05:38 -07:00
Henrik Rydgård
16bf5197e4
Merge pull request #14833 from unknownbrackets/guardband
...
Handle guardband clip/cull better for hardware backends
2021-10-19 12:00:01 +02:00
Henrik Rydgård
09db22c841
Merge pull request #15027 from unknownbrackets/depth-blit
...
GPU: Blit framebuf depth on create too
2021-10-19 10:11:48 +02:00
Unknown W. Brackets
12ad2b05ef
GPU: Blit framebuf depth on create too.
...
Before we only did it for an existing target framebuffer, and never for a
fresh one. But there's not really a good reason to skip that, and this
may improve effects that are cemented after a single frame.
2021-10-17 21:53:23 -07:00
Unknown W. Brackets
9306bbd4e4
GPU: Refactor framebuffer depth blit for reuse.
...
Shouldn't change anything yet, just moving logic around.
2021-10-17 21:51:45 -07:00
Unknown W. Brackets
24c77dc937
GPU: Fix matrix uvgen in software transform.
...
Fixes #15015 .
2021-10-16 23:41:24 -07:00
Unknown W. Brackets
275baccc5b
GLES: Support GL_APPLE_clip_distance too.
...
Seems modern Apple mobile chips only support clip.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
33598f2e75
GPU: Support clip and cull distances separately.
...
Older GL devices, and it seems Apple devices, may not support cull.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
7b00c4a572
GPU: Move Z/W equal hack to bugs from supports.
...
It's really a bug (might even ideally cap the version?), and we already
have other bugs handled the same way.
2021-10-12 20:34:44 -07:00
Unknown W. Brackets
c6a52909f9
D3D11: Support vertex clip/cull planes.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
1a603fedf5
Vulkan: Cull verts fully outside depth.
...
Following PSP rules of -1 to 1 pre-viewport Z. This also enables it for
GLES/OpenGL.
2021-10-12 20:34:43 -07:00
Unknown W. Brackets
7d00b6ca90
GLES: Enable/disable clip distance 0.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
2271b41d07
Vulkan: Use clip distance only if supported.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
273b9a3dc1
Vulkan: Add negative Z clipping.
2021-10-12 20:34:42 -07:00
Unknown W. Brackets
24011c3754
GPU: Correct depth handling for guardband.
...
This culls based on pre-viewport Z and avoids culling based on the clip
range at negative Z.
2021-10-12 20:34:41 -07:00
Unknown W. Brackets
6252241c0f
GPU: Verify throughmode for clears/rects.
2021-10-12 20:34:41 -07:00
Unknown W. Brackets
4ac36cb810
GPU: Cull rectangles more when depth clamp off.
...
If any vert is outside Z, it's culled when not clamping/clipping.
2021-10-12 20:34:41 -07:00
Unknown W. Brackets
5315c404c5
GPU: Cull rectangles outside valid Z.
...
Both TL and BR must be outside in the same direction to be culled when
depth clamp is enabled.
2021-10-12 20:34:41 -07:00
Henrik Rydgård
887f6101d5
Remove the "Auto" texture scale factor. It's a performance trap and not really useful.
2021-10-05 20:41:40 +02:00
Henrik Rydgård
992ad801e7
Add a crude way to blacklist post/texture shaders from certain vendors.
...
Use it to work around #14530 for now.
2021-09-28 23:39:52 +02:00
Unknown W. Brackets
2d9719ed26
TexCache: Avoid hashing videos at all in lazy mode.
2021-09-19 07:35:25 -07:00
Unknown W. Brackets
e2c7366c92
TexCache: Prevent lazy cache on video textures.
2021-09-19 07:31:31 -07:00
Unknown W. Brackets
6762903087
TexCache: Correct confusing red/blue var names.
...
This decodes to RGBA (R least significant), so it's confusing to refer to
it as BGRA. It's actually the 565 colors in the DXT data that are BGR.
2021-09-12 17:21:45 -07:00
Unknown W. Brackets
a0eeb52444
softgpu: Decode DXT texels directly.
...
This improves performance a lot compared to decoding the whole block.
Eventually we may implement a cache, but threading makes that complex to
make properly fast.
2021-09-12 09:37:34 -07:00
Unknown W. Brackets
1ee5352d3e
TexCache: Correct DXT5 alpha calculation.
...
This matches PSP alpha values from an exhaustive test.
2021-09-12 09:35:53 -07:00
Henrik Rydgård
5876388c65
Vulkan scissor fix (validation errors).
2021-09-10 01:15:29 +02:00
Stuart Kenny
f442f4012c
Expose texture shader core option.
2021-09-08 16:42:11 +01:00
Henrik Rydgård
5dab9994b6
Bezier/Spline: Fix logical error (must flush buffered data before we modify submitType).
...
Should fix #14774
2021-09-07 23:52:06 +02:00
Henrik Rydgård
6b76bcf070
Add new texture filtering "Auto Max Quality" that tweaks texture filtering for best quality.
...
It does this by enforcing mipmapping and minification filters, and
always autogenerates mipmaps and enforces anisotropic filtering for all
modes (if that's separately enabled).
This looks nice and flicker free in most games without any additional
tweaking, including GTA and Burnout which have long been painfully
flickery in the distance due to undersampling.
Needs a bit more testing before merge, maybe.
Fixes #13888
2021-09-03 00:14:58 +02:00
Henrik Rydgård
6e8e375eea
Increase the range of cardboard setting sliders to 150%. See #14768
2021-08-29 15:27:51 +02:00
Henrik Rydgård
c0d80b63a9
Hack the math better in cardboard VR mode, to avoid issues with very wide aspect ratios.
...
Fixes #12982
2021-08-28 22:28:02 +02:00
Unknown W. Brackets
4cb6976029
GPU: Use an empty vertex buf for reinterpret.
...
See #14552 .
2021-08-07 22:22:36 -07:00
Henrik Rydgård
bea9f67c02
Fix assorted path issues
2021-07-19 17:34:51 +02:00
Henrik Rydgård
b0558b2174
Assorted directory fixes
2021-07-19 17:34:50 +02:00
Henrik Rydgård
69ae3f4c02
Better protection against broken viewports.
...
It's ok if this emits a single pixel sized viewport, since the cause of
this is generally the viewport being specified outside the scissor
rectangle.
Fixes #13921
2021-07-12 21:19:26 +02:00
Henrik Rydgård
7359c8f083
Revert "Make sure we don't try to set a negative viewport size."
...
This reverts commit 0386cafe53 .
2021-07-12 21:03:29 +02:00
Henrik Rydgård
95dc7bb185
Minor cleanup
2021-07-10 20:00:50 +02:00
Henrik Rydgård
90460df9b5
HLSL depal simplification
2021-07-09 21:09:44 +02:00
Henrik Rydgård
4e8ffae024
Implement basic depth texturing for OpenGL, requires depth clamp for now.
...
Need to figure out what to do about other Z mappings.
Helps #6411 for OpenGL on desktop primarily, and certain other games affected by #13256
are likely working too like the fog in Harry Potter.
2021-07-09 21:09:44 +02:00
Unknown W. Brackets
87716a158f
Merge pull request #14391 from hrydgard/new-threadpool
...
New ThreadManager, replacing threadpools and "PrioritizedWorkQueue"
2021-06-13 07:08:32 -07:00
Henrik Rydgård
3be5c7bd9a
Make the minimum items per thread explicit. Found some bugs, optional arguments are evil.
2021-06-12 21:21:28 +02:00
Unknown W. Brackets
17071e7fec
Postshader: Add uniform for delta since last frame.
...
Useful mainly when using previous frame output.
2021-06-12 11:27:26 -07:00
Unknown W. Brackets
7bbaae492b
Postshader: Let shaders use the previous frame.
...
This is useful for i.e. simulating the slow update speed of the PSP's LCD
screen, but could in theory be used for other effects.
2021-06-12 10:54:36 -07:00
Henrik Rydgård
73871b9b7e
Implement new thread manager, port stuff to it.
2021-06-12 13:03:53 +02:00