Commit Graph
1124 Commits
Author SHA1 Message Date
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
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 2c5922b0ad Merge pull request #11530 from unknownbrackets/dxt
Make DXT alpha and color calculation more accurate
2018-11-04 18:51:54 +01:00
Unknown W. Brackets bd294f658f TexCache: Round DXT5 alpha up.
This isn't quite right, but it seems better than rounding down.
Experimented with a lower round up value, but none were right - the
weighting must be more complex.
2018-11-04 09:36:39 -08:00
Unknown W. Brackets df200fc3d2 TexCache: In DXT3, don't swizzle alpha.
Hardware doesn't seem to.
2018-11-04 09:36:39 -08:00
Unknown W. Brackets c31e01771e TexCache: Respect color order in DXT3/5.
Hardware is still doing DXT1 style colors in this scenario.
2018-11-04 09:36:39 -08:00
Unknown W. Brackets 11ab4e8634 TexCache: Mix DXT colors using 2/3 not 3/8.
Hardware draws using 2/3.  Adding this way matches rounding, too.
2018-11-04 09:36:39 -08:00
Unknown W. Brackets 35a1d8a1ef TexCache: Decode DXT1 zero alpha as black.
Hardware tests show this is how it decodes, which is more like standard
DXT1 decoding.
2018-11-04 08:09:56 -08:00
Unknown W. Brackets 38eb9d12d0 TexCache: Don't swizzle DXT1 colors.
Hardware tests show that this shouldn't happen.  May be important for
color tests, etc.
2018-11-04 08:09:13 -08: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
Henrik Rydgård 6eb4c141a6 Merge pull request #11510 from unknownbrackets/scissor
GLES: Correct invalid scissor handling
2018-11-02 11:09:05 +01:00
Unknown W. Brackets 29b5581416 GLES: Correct invalid scissor handling.
Also improves Direct3D 9.  See #11444.

Per hardware tests, we should correctly not draw in this case.
2018-10-28 15:56:02 -07:00