Commit graph

1435 commits

Author SHA1 Message Date
driver1998
5072584781 Fix neon headers for MSVC ARM64
MSVC uses arm64_neon.h for ARM64, arm_neon.h is ARM32 only.
2019-05-04 22:45:15 +08:00
Unknown W. Brackets
00d088ab58 GPU: Improve non dual source stencil replace.
If we're replacing with a constant FF, we can make it work more often.
Fixes #11249.
2019-04-07 15:20:56 -07:00
Unknown W. Brackets
1199008641 TexCache: Align bufw properly even for VRAM.
Fixes minimap arrows in Manhunt 2 (see #9615.)
2019-03-24 19:21:08 -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
f316a65905 Revert "Temporary commit to get CalcCullRange logging into a buildbot build"
This reverts commit 786914690d.
2019-03-13 11:39:08 +01:00
Henrik Rydgård
786914690d Temporary commit to get CalcCullRange logging into a buildbot build 2019-03-13 11:37:52 +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
Unknown W. Brackets
d7f2167898 GLES: Correct cull range offset in unbuffered. 2019-03-02 10:58:28 -08:00
Unknown W. Brackets
357e0316a0 GPU: Handle cull range properly drawing at offset.
Did the transformation backwards.
2019-03-02 10:48:01 -08:00
vit9696
27d216ea25 Fix postprocessing shader support on macOS
Check GL_ARB_shading_language_420pack availability, which SPIRV-Cross assumes
present by default, causing explicit binding location generation during shader
translation.
2019-02-22 06:34:37 +03:00
Unknown W. Brackets
af58577aff GPU: Better typesafety for shader bits.
See 128c0ad.
2019-02-16 06:54:56 -08:00
Unknown W. Brackets
b955ec70c9 GPU: Correct depth clamp range in range cull.
It was just wrong before, causing wrong culling when using a non-standard
viewport scale/center for depth.

Fixes #11701, fixes #11781.
2019-02-10 09:58:01 -08:00
Unknown W. Brackets
0f74a19979
Merge pull request #11777 from hrydgard/redefine-slow-framebuffer-effects-setting
Gate fewer effects behind "Disable slow framebuffer effects".
2019-02-09 05:14:11 +00:00
Henrik Rydgard
5aed2a2cee Gate fewer effects behind "Disable slow framebuffer effects". 2019-02-08 15:02:31 +01:00
Henrik Rydgard
11c8450f19 Only gate really expensive block transfers behind the setting. 2019-02-08 14:50:47 +01:00
Henrik Rydgård
79d4b0f5a2 Check that allocations in SplineCommon succeed. Attempt at #11660 but not optimistic. 2019-01-06 13:51:17 +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
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
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
xebra
df4179fdb5 [spline/bezier]Remove unused stuff. 2018-12-24 04:06:12 +09:00
Henrik Rydgård
3ad168e1a9
Merge pull request #11674 from unknownbrackets/spline-cull
GPU: Fix curve breakage due to cull flipping
2018-12-16 22:38:26 +01:00
Unknown W. Brackets
8a7ec4fc19 GPU: Fix curve breakage due to cull flipping. 2018-12-16 13:00:36 -08:00
Henrik Rydgård
749163beca
Merge pull request #11667 from hrydgard/remove-truecolor
Remove outdated TrueColor setting.
2018-12-14 18:58:24 +01:00
Henrik Rydgard
56bc7b1d52 Remove outdated TrueColor setting. 2018-12-14 16:13:44 +01: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
ab7bd6fc67
Merge pull request #11624 from unknownbrackets/shaderid
GPU: Ignore light params for shade mapping in shader id
2018-12-03 09:35:10 +01:00
Unknown W. Brackets
482487dd8d GPU: Ignore light params for shade mapping.
They aren't part of the equation, so this simplifies and slightly reduces
number of shaders.
2018-12-02 14:11:19 -08:00
Unknown W. Brackets
9a7ee41191 Vulkan: Avoid OpKill workaround with no stencil.
It seems like depth gets messed up either way on discard, but behaves
sorta better without the write to depth.
2018-12-01 14:10:47 -08: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
b1e68c653c GPU: Avoid a missing virtual destructor warning. 2018-12-01 13:59:47 -08:00
Unknown W. Brackets
7b815af331 GPU: Force use of indexes on cull mode flip.
Since we flip in the index, it can't be pure in this case.
2018-11-30 07:22:28 -08:00
Unknown W. Brackets
1517d66d4e GPU: Properly flip cull on simple triangle lists.
Fixes #11601.
2018-11-29 19:03:38 -08:00
mrfixit2001
53e6fbadf4
fix ifdef vs if defined 2018-11-26 16:02:25 -05:00
mrfixit2001
0ab6c59fbe
Avoid possible compile error: conflicting defs
In some cases, depending on the build flags, these two lines can be actively compiled at the same time, resulting in a conflicting definitions error:
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/DrawEngineCommon.h#L41
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/TextureDecoder.h#L88

I believe all that's necessary here is to add these "or" clauses to avoid it and safeguard against the error.
2018-11-26 14:59:14 -05:00
Henrik Rydgård
c5c1c46f38 Attempt to fix glsl depal error reported in #11588 (ATI/AMD) 2018-11-25 11:33:02 +01: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
4942c52f73
Merge pull request #11172 from weihuoya/cullface
handle cullface, help to #10597
2018-11-23 09:56:17 +01:00
Unknown W. Brackets
cd6783fa0d GPU: Use provoking normal for lighting with flat.
This might interact strangely with skinning of texture matrix mapping, but
they're not likely to be used together.
2018-11-22 17:52:14 -08:00
Unknown W. Brackets
b2d60cb807 SoftGPU: Cleanup lighting code a bit.
Avoid using Length() when Length2() is enough, simplify some things.
2018-11-18 07:28:03 -08: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
Unknown W. Brackets
6600896312 GPU: Fix shade mapping in soft transform.
Was using invalid values when lighting was off.
2018-11-17 18:05:32 -08:00
Unknown W. Brackets
2d3885fc1a GE Debugger: Fix display event record timing.
When the display happens mid frame, this fixes it so you can see the
result easily when running the dump, without manually stepping through.
2018-11-17 11:14:10 -08:00
xebra
04708fe88a [spline/bezier]Unify SubmitSpline/Bezier. 2018-11-13 18:22:34 +09:00
Henrik Rydgård
32cd6dfae6 Take care of most cases of render-to-virtual-readback-buffer, I think. 2018-11-12 08:20:28 +01:00
Henrik Rydgård
6269d9b893 Support virtual readbacks for detected-memcpy framebuffer copies, delete MotoGP hack. 2018-11-12 08:20:28 +01:00
Henrik Rydgård
7abbc1bebd Add compat flag to allow virtual framebuffer readbacks (auto-create fb from readback destination). Does not yet work outside VRAM but should fix Digimon Adventure. 2018-11-12 08:20:27 +01:00
Henrik Rydgård
cf653b7631 No need for fb_normalized_address 2018-11-12 08:19:20 +01:00
Henrik Rydgård
b17fc67c45 Get rid of MaskedEqual 2018-11-12 08:19:19 +01:00
Henrik Rydgård
15f2e48887 Only mask away Z mirrors if inside VRAM 2018-11-12 08:19:19 +01:00