Henrik Rydgård
09b5546828
Apply the same Mali range culling "fix" in OpenGL.
2019-08-09 00:09:06 +02:00
Unknown W. Brackets
732d344328
Common: Fix some unused ident and case warnings.
2019-06-22 13:22:12 -07:00
Unknown W. Brackets
c5b844cc98
GPU: Respect stencil write mask on clear.
...
Actually identified this for the softgpu in #11319 , but applying it for
RGBA is a problem in most renderers. Forgot to at least apply it to
stencil.
Fixes #11901 .
2019-03-16 19:42:18 -07:00
Henrik Rydgård
3445f39f3f
Survive pipeline creation failure on Vulkan. Makes Burnout playable on Pocophone... Sigh.
...
Minor cleanups.
2019-03-11 16:40:10 +01:00
Unknown W. Brackets
271389b8e5
GLES: Fix stencil buffer upload at > 1x PSP.
...
Also fixes crashes on ATI. See #6627 .
2019-03-10 08:36:12 -07:00
Henrik Rydgård
8e7da3fef4
Disable vertex range culling when the depthrange hack is enabled. Temporary workaround for #11576 .
2019-02-26 16:07:11 +01:00
Henrik Rydgård
1f4c1cee2d
Disable more texcoord math on terrible-precision PowerVR (it's really awful). Fixes #9189 .
2019-02-26 10:39:17 +01:00
Unknown W. Brackets
af58577aff
GPU: Better typesafety for shader bits.
...
See 128c0ad
.
2019-02-16 06:54:56 -08:00
Henrik Rydgard
5aed2a2cee
Gate fewer effects behind "Disable slow framebuffer effects".
2019-02-08 15:02:31 +01:00
Henrik Rydgard
9736bc431a
The block transfer setting should not affect clearing memory behind a render target, especially since that's already gated behind a compat flag.
2019-02-08 14:46:16 +01:00
Henrik Rydgård
12f295c4a5
GLES: Detect Vivante GPU, disable vertex range culling
...
Should work-around #11703
2019-01-03 12:43:32 +01:00
Henrik Rydgård
8e17caf351
Merge pull request #11694 from unknownbrackets/draw-bugs
...
Vulkan: Limit stencil workaround to Adreno 5xx
2018-12-26 20:46:09 +01:00
Unknown W. Brackets
adeca2c3ba
GLES: Move some vendor bug checks to Draw.
2018-12-23 20:27:22 -08:00
Unknown W. Brackets
7ad6270623
GLES: Remove spurious semicolons in shaders.
...
Were causing compile errors on some devices.
2018-12-23 20:21:17 -08:00
Unknown W. Brackets
01809f809f
GLES: Correct fragment precision check.
...
Was breaking on Mali-4xx for example, because not defined.
2018-12-23 20:16:59 -08:00
Unknown W. Brackets
e46701dee6
GLES: Specify glsl version precisely in depal.
...
Should prevent more of #11588 on vertex shaders, and may help Apple
devices some too.
2018-12-23 20:08:08 -08:00
Unknown W. Brackets
9a3de5cb1c
GPU: Move dual source blending bug check to Draw.
...
This also allows the ini setting to avoid it on Intel.
2018-12-23 14:11:57 -08:00
Unknown W. Brackets
f8ce9b08ba
Vulkan: Limit stencil workaround to Adreno 5xx.
2018-12-23 14:11:57 -08:00
Unknown W. Brackets
1f594f3fb5
GPU: Track draw in shader manager.
...
With device restore etc. everywhere.
2018-12-23 12:55:37 -08:00
Henrik Rydgård
683a4e0fb2
Merge pull request #11676 from unknownbrackets/gles-depth
...
WIP - GLES: Download depth values via shader
2018-12-19 09:58:38 +01:00
Unknown W. Brackets
08d71cef50
GLES: Simplify depth download shader.
...
Fixes it on Adreno, no need to do the constant math in the shader.
2018-12-18 21:47:21 -08:00
Henrik Rydgård
a73c569bf6
Add check for GL_FRAGMENT_PRECISION_HIGH for GLES in stencil code.
2018-12-18 14:30:05 +01:00
Henrik Rydgård
a2cc2b39ca
Additional raw string shaders
2018-12-18 10:42:29 +01:00
Henrik Rydgård
de4dec2a80
Use raw strings for more shaders
2018-12-18 10:37:45 +01:00
Unknown W. Brackets
27e8720e14
GLES: Download depth values via shader.
...
Working on desktop, but not on mobile...
2018-12-16 17:34:16 -08:00
Unknown W. Brackets
e49568f67d
GLES: Move depth packing code to dedicated file.
2018-12-16 17:34:16 -08:00
Henrik Rydgard
3f8aec5147
Remove the "Disable stencil test" hack. Doesn't seem to serve much purpose anymore.
2018-12-14 13:54:03 +01:00
Henrik Rydgård
d9cfa3a8fa
Bump shader caches
2018-12-02 21:49:20 +01:00
Unknown W. Brackets
5932cbabc3
GPU: Avoid stencil emulation if possible.
...
This reduces use of replaceAlpha, and reduces use of more complicated
blend states. This simplifies fragment shaders a little.
2018-12-01 14:05:29 -08:00
Unknown W. Brackets
d9510f8824
D3D11: Allow shader blend to self.
...
It was forcing from black before. See #9616 .
2018-11-24 10:19:28 -08:00
Henrik Rydgård
c789c34274
Merge pull request #11575 from unknownbrackets/texture-self
...
GLES: Fix render-to-self detection
2018-11-22 20:05:16 +01:00
Henrik Rydgård
d9493009c7
Merge pull request #11574 from unknownbrackets/lighting
...
Correct various light param issues based on tests
2018-11-22 20:04:46 +01:00
Unknown W. Brackets
87085d18f0
GLES: Fix render-to-self detection.
...
Was broken by the recent fb_address changes, so match Vulkan and D3D11
for consistency.
2018-11-22 09:26:12 -08:00
Unknown W. Brackets
1c19bce514
GPU: Correct specular exponent zero.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
4816bfc1a6
GPU: Skip specular on negative diffuse factor.
...
This is correct per hardware tests, see #8403 . Note that the PS3 emulator
running PSP HD remasters does not correctly handle this, and applies
specular for negative diffuse factor.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
6e46d6c0f9
GPU: Correct powered diffuse with exp=0.
...
Just to ensure negative factors are handled too, as they are on hardware.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
1cec9f5ea1
GPU: Handle spot light with 0 exp or length.
2018-11-22 08:53:25 -08:00
Unknown W. Brackets
9a4cd5bd9d
GPU: Skip specular on powered diffuse.
...
Matches hardware tests and improves lighting for Virtua Tennis, see #4140 .
2018-11-22 07:59:56 -08:00
Henrik Rydgård
442b57033f
Attempt to fix the last very common issue of #11493 by being paranoid
2018-11-21 22:40:54 +01:00
Unknown W. Brackets
0c5c776bb9
GPU: Correct shade mapping with 0,0,0 light pos.
...
May need to audit more normalize() usage, if it's consistent in other
places.
2018-11-17 18:33:07 -08:00
Henrik Rydgård
b17fc67c45
Get rid of MaskedEqual
2018-11-12 08:19:19 +01:00
Henrik Rydgård
d8f4a70396
Remove constraint that virtual framebuffers have to represent VRAM.
...
Prerequisite for #11531 , virtual readbacks.
2018-11-12 08:19:14 +01:00
Henrik Rydgård
22c066515e
Merge pull request #11425 from xebra/refactor_spline_bezier
...
[Refactoring] Improve spline/bezier.
2018-11-04 17:04:29 +01:00
Unknown W. Brackets
40ca49d0e3
GPU: Cancel shader preload on shutdown/lost.
...
Otherwise, we could've ended up with shaders loading after or during the
lost event, and dense hash map corruption.
2018-10-30 20:32:12 -07:00
Henrik Rydgård
fa40bcff8d
Disable triangle range culling on D3D9 on Intel. Should fix #11477
2018-10-21 09:36:15 +02:00
Henrik Rydgård
842290b6dd
Workaround for bad int behaviour on Adreno / GLES. (no problems in
...
Vulkan).
See #11480 , should help #11479 .
2018-10-20 13:22:14 +02:00
xebra
eca9386c05
[spline/bezier]Reduce static buffers. Get rid of the spline buffer using half of the vertex buffer.
2018-10-07 23:54:31 +09:00
xebra
ef53195ae8
[spline/bezier]Surround with namespace Spline.
2018-10-07 23:54:28 +09:00
xebra
1dfb402871
[spline/bezier]Remove comment.
2018-10-07 23:54:27 +09:00
xebra
41823f8780
[spline/bezier]Fix GLES texture resolution of HW tess to real 2D to avoid huge width in FF4CC mist dragon morphing.
2018-10-07 23:54:23 +09:00