xebra
1b9af84270
[spline/bezier]minor fix
2018-10-07 23:53:47 +09:00
xebra
2a3210ac05
[spline/bezier]Make a bezier weights calculation class and precalculate all bezier weights at the beginning.
2018-10-07 23:53:46 +09:00
xebra
3aeb3201b9
[spline/bezier]Improve bezier weights calculation.
2018-10-07 23:53:45 +09:00
xebra
a340390996
[spline/bezier]Move bezier patch loops into the function and pre-convert control-points.
2018-10-07 23:53:44 +09:00
xebra
d0682d7829
[spline/bezier]Move SIMD optimization of vector operations to Math3D.h.
...
Needs rebuild to avoid a dialog confirmation on Visual Studio.
2018-10-07 23:53:43 +09:00
xebra
c8e45ae4bf
[spline/bezier]Use real tessellation in low-quality with "fixed to 2" tessellation factor.
...
# Conflicts:
# GPU/Common/SplineCommon.cpp
2018-10-07 23:53:42 +09:00
xebra
36ed61d08d
[spline/bezier]Pre-convert control-points for the accumulation of SIMD optimization, and avoid conversion in hot loops.
...
# Conflicts:
# GPU/Common/SplineCommon.cpp
# GPU/Common/SplineCommon.h
2018-10-07 23:53:42 +09:00
xebra
62ad5fe546
Fix namespace Vec2f.
2018-10-07 23:53:41 +09:00
xebra
15a11d58c9
Modify IndexConverter class to functor.
2018-10-07 23:53:40 +09:00
xebra
d8ccc1c2b5
[spline/bezier]minor fix
2018-10-07 23:53:39 +09:00
xebra
30c3c87da8
[spline/bezier]Make a function to build indices.
2018-10-07 23:53:38 +09:00
xebra
7cbc97f19e
[spline/bezier]minor cleanup
2018-10-07 23:53:37 +09:00
xebra
966ff32ee7
[spline/bezier]Improve the logic of copying control-points.
2018-10-07 23:53:36 +09:00
xebra
485260c937
[spline/bezier]Make a function to copy control points.
2018-10-07 23:53:35 +09:00
xebra
b1289cddce
[spline/bezier]minor fix
2018-10-07 23:53:34 +09:00
xebra
3c2837bee7
[spline/bezier]minor fix
2018-10-07 23:53:33 +09:00
xebra
a7754c4b9c
[spline/bezier]minor fix
...
# Conflicts:
# GPU/Common/SplineCommon.cpp
2018-10-07 23:53:32 +09:00
xebra
1d4e8ccd25
[spline/bezier]minor fix
2018-10-07 23:53:32 +09:00
xebra
28a50053bd
[spline/bezier]minor fix
2018-10-07 23:53:31 +09:00
xebra
a4860b6c80
[spline/bezier]Managing buffer allocation.
...
# Conflicts:
# GPU/Common/SplineCommon.cpp
2018-10-07 23:53:30 +09:00
xebra
a9ac860da2
[spline/bezier]Add spline derivative calculation for normal generation.
2018-10-07 23:53:29 +09:00
xebra
5c7284f8f2
[spline/bezier]Get rid of divisions in spline weights calculation.
2018-10-07 23:53:28 +09:00
Unknown W. Brackets
67058495f5
GPU: Dirty more correctly for cullrange params.
...
Was previously missing some settings which might convince us to use large
viewports, and more importantly some that would impact the depth settings
under certain settings.
2018-09-21 21:55:11 -07:00
Unknown W. Brackets
a8588b0c5c
GPU: Correct handling of large viewport scaling.
...
Need to multiply not divide, duh. Also lost the offset during refactor,
and didn't test it well.
2018-09-20 20:29:46 -07:00
Unknown W. Brackets
52baec21a8
GPU: Refactor cull range calculation together.
2018-09-17 22:27:25 -07:00
Unknown W. Brackets
44ba31fbc6
Vulkan: Implement verex range culling.
...
Also D3D11, since they are very similar.
2018-09-17 07:27:26 -07:00
Unknown W. Brackets
ab3a466621
GLES: Implement vertex range culling.
...
Based on tests, skips triangles with any point outside the 4096x4096 box,
except when depth clamping would engage.
2018-09-17 07:27:26 -07:00
Unknown W. Brackets
797327eecd
GPU: Handle bad fog params as large signed vals.
...
From tests, it seems they're just treated as valid exponents.
Using 65535 since that's the range of depth, can't think of a game using a
larger value for a fog parameter, probably never even this large.
2018-09-10 00:28:02 -07:00
Unknown W. Brackets
703181607e
GPU: Apply color test after doubling.
2018-09-09 20:09:48 -07:00
Unknown W. Brackets
97773d3dd5
TexCache: Fix texture alignment in GLES.
...
We must align to 4 bytes, and we aren't always aligned to 16 anymore, so
we must check when dealing with swizzle.
2018-09-08 19:00:30 -07:00
Unknown W. Brackets
f65edc20a3
TexCache: Optimize DXT5 alpha lerp.
...
This makes the overall DXT5 decode about 8% faster.
2018-09-02 11:41:27 -07:00
Unknown W. Brackets
3f35221f3b
TexCache: Avoid masking out alpha for DXT3/DXT5.
...
A little faster. Also refactor colors a bit to be more readable.
2018-09-02 09:53:31 -07:00
Unknown W. Brackets
8ae2b1e6fb
TexCache: Optimize DXT3/DXT5 decode to single pass.
...
This is significantly faster on Vulkan, and in other situations where
we're decoding directly to uncached memory.
2018-09-02 09:30:46 -07:00
Unknown W. Brackets
a4c0640f01
GE Debugger: Factor out host calls some.
...
Moving more of this to cross platform for the web debugger.
2018-09-01 08:32:03 -07:00
Unknown W. Brackets
00daa00ae5
TexCache: Keep maxSeenV on clut variants in sync.
...
This ensures that we detect changes properly even when they are outside
the max V used with one CLUT.
Fixes #9355 , enemy fade out in FF2.
2018-08-29 22:07:27 -07:00
Unknown W. Brackets
22a536fb0c
Merge pull request #11307 from hrydgard/discord-mac-linux
...
Enable Discord integration for Mac and Linux.
2018-08-26 23:04:49 -04:00
Unknown W. Brackets
274b1eaa0e
GPU: Fix typo with wrong type.
...
No behavior change, just fixes a warning.
2018-08-26 11:51:06 -07:00
Henrik Rydgård
3c99d16da7
Merge pull request #11322 from unknownbrackets/texcache
...
GPU: Fix texture handling on framebuf detach
2018-08-25 21:12:45 +02:00
Henrik Rydgård
569c073497
Merge pull request #11319 from unknownbrackets/logicop
...
GPU: Apply logic op in more cases
2018-08-25 21:11:48 +02:00
Unknown W. Brackets
7fa20d4734
GPU: Download safe size on next create, too.
...
In some cases, games will create a series of framebufs. Before, we
weren't downloading them if they were only used once, as intended.
2018-08-25 10:01:43 -07:00
Unknown W. Brackets
3f48e446b6
GPU: Fix texture handling on framebuf detach.
...
We were never creating/recreating the texture, so we ended up with null.
Caused all sorts of problems.
2018-08-25 09:57:37 -07:00
Unknown W. Brackets
5c01bf61e6
GPU: Apply logic op in more cases.
...
It has well defined behavior with alpha blending, so let's apply it even
when we're blending. Fixes #11316 .
2018-08-24 21:19:54 -07:00
Unknown W. Brackets
734db3d050
GPU: Refactor logic op simulation for better reuse.
2018-08-24 21:05:27 -07:00
weihuoya
7383e90c19
handle cullface, help to #10597
2018-08-23 12:46:09 +08:00
Henrik Rydgård
e34378a1c1
Enable Discord integration for Mac and Linux.
2018-08-18 10:11:15 +02:00
Unknown W. Brackets
77f0499f7f
GPU: Rename clipping flag to depth clamp.
...
It seems to just to depth clamp. When depth clamp happens, it affects
clipping a little, but only for vertices that needed clamping.
2018-08-05 17:11:51 -07:00
Unknown W. Brackets
7885a88c0c
GPU: Optimize > 0 alpha test using discard rules.
...
It should be equally unsafe to use src color as dest blend factor, or
use blending with a subtract or min/max equation.
2018-07-29 11:39:06 -07:00
Unknown W. Brackets
fba0de59c1
GPU: Restrict alpha test to zero for dest blend.
...
We could end up with the wrong blending in other cases, because the
exiting color will get multiplied.
Luckily, this is still the common case.
2018-07-29 11:26:04 -07:00
Henrik Rydgård
a776dce593
Merge pull request #11269 from unknownbrackets/fragtest
...
Avoid discard when we can blend
2018-07-29 09:49:16 +02:00
Henrik Rydgård
42f4d7b40f
OpenGL: Fix bug where we could end up calling glUniformMatrix without a bound program. Found by GL debug callback on NV.
...
This adds a bit of extra checking that's only enabled in _DEBUG builds.
2018-07-28 11:09:01 +02:00