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
Henrik Rydgård
c6c22a03fd
Address feedback, thanks!
2018-10-28 16:48:46 +01:00
Henrik Rydgård
c074d3c61f
Improve sanity checks for framebuffer readbacks
2018-10-28 14:30:39 +01:00
Unknown W. Brackets
ca5adcda71
GPU: Reduce log noise while stepping.
...
We redisplay the framebuf over and over, which is annoying when you have
debug logging on and are trying to read the log.
2018-10-07 14:40:10 -07:00
xebra
46d30d02cf
[spline/bezier]minor fix
2018-10-07 23:54:32 +09: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
5f07213c25
[spline/bezier]minor fix
2018-10-07 23:54:30 +09:00
xebra
5f9022ae14
[spline/bezier]minor fix
2018-10-07 23:54:29 +09:00
xebra
ef53195ae8
[spline/bezier]Surround with namespace Spline.
2018-10-07 23:54:28 +09:00
xebra
10afcf2dbb
[spline/bezier]Improve basic spline/bezier structures.
2018-10-07 23:54:26 +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
xebra
89786b943d
[spline/bezier]Instanced rendering for B-Spline is very slow when using weak GPU, so disabled it and simplify the shaders.
...
Add changing the quality of HW tessellation.
2018-10-07 23:54:22 +09:00
xebra
d98fa06b5f
[spline/bezier]Fix to build for Android(clang).
2018-10-07 23:54:21 +09:00
xebra
019e276798
[spline/bezier]Modify ControlPoints and fix VertexPreview.
2018-10-07 23:54:20 +09:00
xebra
1c604d5b60
[spline/bezier]Put the control points stuffs all in one structure.
2018-10-07 23:54:19 +09:00
xebra
66833513c0
[spline/bezier]Modify the weights cache variables to a template variable.
2018-10-07 23:54:18 +09:00
xebra
c4a8d80b61
[spline/bezier]Put the output buffers all in one structure.
2018-10-07 23:54:17 +09:00
xebra
a241058d7b
[spline/bezier]Improve TemplateParameterDispatcher class macro to a real class.
2018-10-07 23:54:16 +09:00
xebra
98ddefbd5a
[spline/bezier]Extract an if-check in the hot loops to the template parameter.
2018-10-07 23:54:15 +09:00
xebra
453e274fbe
[spline/bezier]Fix around vertex type flags.
2018-10-07 23:54:11 +09:00
xebra
d4a667397c
[spline/bezier]Improve shader uniforms a bit.
2018-10-07 23:54:10 +09:00
xebra
3d07bca010
[spline/bezier]Fix spline weights calculation and get rid of using next patch position in hwtess.
...
# Conflicts:
# GPU/Directx9/VertexShaderGeneratorDX9.cpp
# GPU/GLES/VertexShaderGeneratorGLES.cpp
# GPU/Vulkan/VertexShaderGeneratorVulkan.cpp
2018-10-07 23:54:07 +09:00
xebra
a48a5b32f0
[spline/bezier]Unify hardware tessellation of bezier and spline.
2018-10-07 23:54:06 +09:00
xebra
3c0fb44f2e
[spline/bezier]Improve hwtess to use cached weights.
2018-10-07 23:54:05 +09:00
xebra
e5976f588b
[spline/bezier]Unify software tessellation of bezier and spline.
...
# Conflicts:
# GPU/Common/SplineCommon.cpp
2018-10-07 23:54:03 +09:00
xebra
0cb63318bc
[spline/bezier]Fix to build for GE debugger.
2018-10-07 23:54:00 +09:00
xebra
7d45078202
[spline/bezier]minor cleanup
2018-10-07 23:54:00 +09:00