Commit graph

113 commits

Author SHA1 Message Date
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
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
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
xebra
068cc37b2f [spline/bezier]Improve bezier tessellator. 2018-10-07 23:53:51 +09:00
xebra
1e84a62e96 [spline/bezier]Implement weights cache system. 2018-10-07 23:53:50 +09:00
xebra
15b409a698 [spline/bezier]Make a spline weights calculation class and precalculate all spline weights at the beginning. 2018-10-07 23:53:49 +09:00
xebra
0c9680446e [spline/bezier]minor fix 2018-10-07 23:53:48 +09:00
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
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