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
xebra
24123e6268
[spline/bezier]Fix about quality.
2018-10-07 23:53:59 +09:00
xebra
da1176f2b3
[spline/bezier]Improve template parameter dispatch method.
...
# Conflicts:
# GPU/Common/SplineCommon.h
2018-10-07 23:53:58 +09:00
xebra
f7ac70858d
[spline/bezier]Improve spline tessellation using same as bezier tessellation method.(performance improvements, at least 10 FPS or more)
2018-10-07 23:53:57 +09:00
xebra
b11f9e6acf
[spline/bezier]Fix normal generation flag and some minor stuffs.
2018-10-07 23:53:56 +09:00
xebra
ca4e246680
[spline/bezier]Improve tessellator more generic.
2018-10-07 23:53:55 +09:00
xebra
07888d7027
[spline/bezier]Improve bezier tesselator more.
2018-10-07 23:53:54 +09:00
xebra
f12d796665
[spline/bezier]minor cleanup
2018-10-07 23:53:53 +09:00
xebra
30691535dc
[spline/bezier]Fix bezier texcoord generation.
2018-10-07 23:53:52 +09:00
xebra
4c6098d801
[spline/bezier]Improve bezier tessellator more.
2018-10-07 23:53:51 +09:00