Commit graph

136 commits

Author SHA1 Message Date
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
Henrik Rydgard
53f062b7b2 refactor: Remove some uses of gstate from SplineCommon and a fex texcache functions 2015-07-29 11:40:45 +02:00
Henrik Rydgard
26624709f7 Hook up the frame profiler to a few measurements 2015-05-24 23:45:36 +02:00
Henrik Rydgard
a9ff7c22fe Reject too-small spline patches. Might help #7690. 2015-04-17 08:33:05 +02:00
Henrik Rydgard
68893c763f Spline: Fix an unrelated kind-of-bug 2015-04-16 18:32:37 +02:00
Henrik Rydgard
6587f4de8f Spline: Fix #7684 by removing awful epsilons that "fixed" off-by-ones depending on vertex count because of fp rounding. 2015-04-16 18:32:13 +02:00
Henrik Rydgard
2e38762708 Spline: Add commented-out sanity check for debugging 2015-04-16 18:22:08 +02:00
Henrik Rydgard
b3305246a3 Spline: Not that it should matter, but move the patch_div clamping down after the subsampling 2015-04-16 18:18:49 +02:00
Henrik Rydgard
6bc9a525f8 Spline: remove n and m, confusing 2015-04-16 18:14:46 +02:00
Henrik Rydgard
058499e5bf De-dupe the spline code 2015-04-08 21:44:54 +02:00
Chin
37f50a3792 Change to pass some arguments by reference 2015-03-01 16:49:00 +01:00
Unknown W. Brackets
945ff359b2 Detect SSE4.1 support better when compiling. 2015-02-25 19:53:31 -08:00
Unknown W. Brackets
647e841959 Use SSE in spline value generation too. 2015-02-25 19:51:10 -08:00
Unknown W. Brackets
588efa5a71 Use SSE4.1, if available, for spline normals. 2015-02-25 19:28:52 -08:00
Unknown W. Brackets
f070d6f5ed Use SSE when generating spline normals. 2015-02-25 19:22:48 -08:00
Unknown W. Brackets
8e19f568d7 Optimize spline weighting using SSE and templates.
Makes the Thundaga spell much more survivable on a i7, at least.
2015-02-22 13:24:48 -08:00
Henrik Rydgard
033798c796 Expand spline data into a separate buffer. Prevent overflowing it by reducing the size of spline draws if necessary (but shouldn't really happen).
Might help #7386
2015-01-29 16:04:00 +01:00
Unknown W. Brackets
2e9f492b24 Silence an initialization warning.
Pretty sure it's wrong but this isn't that hot anyway.
2014-12-13 18:36:28 -08:00
Unknown W. Brackets
7ed67ad066 Use floats and SSE for spline colors. 2014-12-13 10:36:09 -08:00
Unknown W. Brackets
e130c1648d Clean up some conversion warnings. 2014-12-13 10:35:47 -08:00
xebra
43e3028add [spline/bezier]Writing vertices to the buffer directly. 2014-12-14 01:08:00 +09:00
xebra
51a5935d9a [spline/bezier]Bernstein function does not need to calculate at the edges. 2014-12-10 01:50:28 +09:00
xebra
9a83c99e19 [spline/bezier]Precompute bernstein derivative functions. 2014-12-10 01:41:02 +09:00
xebra
8ef4a61bf6 [spline/bezier]Spline subdivision counts should be 2 or higher. Related to #4234 #7111 2014-12-09 02:42:52 +09:00
xebra
f6b937fe59 [spline/bezier]Fix sometimes spline disappear in medium quality. Reported on #7111. 2014-12-03 01:49:08 +09:00
xebra
2d59a15ade [spline/bezier]Fix spline tex coords correctly, it seems perfect! 2014-12-03 01:26:40 +09:00
xebra
ad22ffc679 [spline/bezier]Support medium quality. It's half of high quality. High quality is the original. 2014-11-26 12:23:02 +09:00
xebra
8cc7d8c71a [spline/bezier]Fix patch subdivision counts correctly. 2014-11-25 23:47:29 +09:00
Henrik Rydgard
02a89306d1 Warning fixes, sprintf->snprintf 2014-09-13 23:51:07 +02:00
Henrik Rydgard
a4ae0f951a Move spline generation to SplineCommon, make SplineDX9.cpp identical to Spline.cpp (merge later somehow) 2014-09-13 15:13:34 +02:00