Commit graph

129 commits

Author SHA1 Message Date
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
weihuoya
d9d9b14e53 Don't cut below 2 2018-07-05 15:29:40 +08:00
Unknown W. Brackets
2a13a66e18 GPU: Use hw tess only for hw transform.
This may be needed if we start using software for points/lines.
2018-06-28 19:47:33 -07:00
Unknown W. Brackets
9aad4dc848 GE Debugger: Cleaned repetition in spline preview. 2018-06-06 05:59:14 -07:00
Henrik Rydgård
4cf5999bc8 Move the vertTypeID calculation out of DrawEngine. Need to shorten SubmitPrim as much as possible. 2018-03-05 12:28:10 +01:00
Henrik Rydgård
875f70b06d Remove wrong comments 2017-11-17 16:22:07 +01:00
Henrik Rydgård
ca21f93d52 GPU: Advance the vertex pointer after BBOX vertices are sent. Fixes #6554, finally! 2017-11-17 13:36:48 +01:00
Henrik Rydgård
da09e10aa3 Make the interface to hw tess slightly more flexible. 2017-11-12 11:04:13 +01:00
Henrik Rydgård
22e65ba80d Get rid of ugly alignment macros and some other cruft, we now have alignas(16) from C++11 2017-08-31 01:14:51 +02:00
Unknown W. Brackets
ede9025447 SoftGPU: Simplify index conversion. 2017-04-15 21:01:17 -07:00
xebra
ca7f265b11 [spline/bezier]Change all backends vertex texture format to RGBA(16 bytes). 2017-03-24 13:29:05 +09:00
xebra
f4737cc1fa Fix f14b7549. 2017-03-24 00:02:18 +09:00
xebra
e6af91f1b0 [spline/bezier]Trying to fix a problem that wrong texture format causes a crash. 2017-03-23 23:57:03 +09:00
xebra
f14b75492d [spline/bezier]Split SendDataToShader() into two functions. 2017-03-23 23:28:38 +09:00
xebra
56f80ace90 [spline/bezier]Unify the word "tesselate" to "tessellate". 2017-03-09 18:04:16 +09:00
xebra
29791faf00 [spline/bezier]Fix the avoiding of "crazy tessellation factor" was not working. 2017-03-09 17:56:19 +09:00
Henrik Rydgard
03dab0fdbd More UWP prep 2017-02-25 09:57:22 +01:00
Henrik Rydgard
f5fa238e22 More minor changes to make GPU and native build on UWP later 2017-02-24 20:26:38 +01:00
xebra
54a2dcd442 [spline/bezier]Add some comments and fix to avoid division, use multiply instead. 2017-01-23 14:13:28 +01:00
xebra
52f86cf61b [spline/bezier]Implement common logic of hardware tessellation. 2017-01-23 14:12:02 +01:00
xebra
65be0aa002 [spline/bezier]Move index conversion logic to tiny class. 2017-01-23 14:12:02 +01:00
Henrik Rydgard
9d7983eee8 Remove the ability to turn off prescaleUV entirely. It's simply better to do it in the vertex decoder. 2016-12-20 13:27:44 +01:00
Henrik Rydgard
fe6d2d4017 Avoid unaligned accesses when hashing vertex data on ARM. Fixes #9114, may help #9128 and #9129. 2016-12-01 15:56:05 +01:00
Florent Castelli
8c3552de74 cmake: Detect features at compile time
Instead of relying on manually passed down flags from CMake,
we now have ppsspp_config.h file to create the platform defines for us.
This improves support for multiplatform builds (such as iOS).
2016-10-19 12:31:19 +02:00
Unknown W. Brackets
9224eb375f Correct bezier handling for 0 division.
This should still be drawn and treated as 1.
2016-04-10 17:53:50 -07:00
Unknown W. Brackets
0cd44e838b Allow spline subdivisions below 2. 2016-04-10 17:33:34 -07:00
Unknown W. Brackets
b1f0d4869c Advance pointers after drawing splines.
Tests show this is just like beziers.
2016-04-10 17:12:48 -07:00
Unknown W. Brackets
868bbb8ebe Advance vertex/index pointers on bezier submit.
Just like other primitives.
2016-04-10 12:59:06 -07:00
Unknown W. Brackets
808c807448 Allow tessellation with less than a 4 factor.
Per tests on real hardware, this is allowed.  It works fine without the
clamping and matches the result on hardware.
2016-04-10 12:10:15 -07:00
Unknown W. Brackets
277b76e2ae Treat GE_PATCHPRIM_UNKNOWN as points.
Confirmed by tests on hardware - although it's doubtful any games use
this type.
2016-04-10 11:58:15 -07:00
Unknown W. Brackets
1e0051a792 Add support for 32-bit indices.
Not clear how often these are used by games.  Let's find out.
2016-04-10 02:24:58 -07:00
Unknown W. Brackets
c0660c5ee7 Simplify some repeated code patterns a bit.
Doesn't save many lines of actual code, though...
2016-04-09 22:25:10 -07:00
Unknown W. Brackets
555c76d439 Use bernstein for texcoord interpolation too.
This also closely matches hardware.
2016-04-09 22:14:15 -07:00
Unknown W. Brackets
2314a0f0ee Update note per hardware testing. 2016-04-09 21:46:50 -07:00
Unknown W. Brackets
2bafba3909 Interpolate bezier patch colors using bernstein.
This closely matches hardware (some color values seem to be off by one.)

See #7525.
2016-04-09 21:41:49 -07:00
Unknown W. Brackets
59d9524308 Switch bernsteins to use sse-friendly Vec3f. 2016-04-09 21:10:52 -07:00
Unknown W. Brackets
2e0f9e5603 Apply prescale to generated UVs with speedhack. 2015-12-20 20:47:36 -08:00
Unknown W. Brackets
7bfe100b0f Fix some unused variable warnings.
The CheckAlpha one looks like it will matter.
2015-11-25 16:11:53 -08:00
Henrik Rydgard
33246ffc8d Non-x86 buildfix 2015-07-29 12:19:15 +02:00
Henrik Rydgard
38a31fbd8b Get rid of more uses of gstate from SplineCommon 2015-07-29 12:04:52 +02:00
Henrik Rydgard
cde585a29a Include dependency cleanup 2015-07-29 11:48:20 +02:00