Download presentation
Presentation is loading. Please wait.
Published byRodger Wiggins Modified over 9 years ago
1
Korea University Jung Lee, Computer Graphics Laboratory 3D Game Engine Design David H. Eberly 8.3 Special Surfaces 2001/11/13
2
Jung Lee, Computer Graphics Laboratory Korea University 2 Bezier Rectangle Patches Popular with game programmers Mathematical simplicity Ease of use Equation : ( 0 i 0 n 0, 0 i 1 n 1 ) : 3D control points The first-order partial derivatives of the patch
3
Jung Lee, Computer Graphics Laboratory Korea University 3 Bezier Rectangle Patches Evaluation Trade-off of speed vs. accuracy Bernstein polynomial computation n 0 +1 evaluations of B n0,i0 (s) n 1 +1 evaluations of B n1,i1 (t) n 0 n 1 multiplications for pairs of the evaluated polynomials de Casteljau algorithm Repeatedly computes convex combinations Generally stable Use more floating-point operations
4
Jung Lee, Computer Graphics Laboratory Korea University 4 Comparison For Bilinear Interpolation Case where n 0 =1 and n 1 =1 Bernstein form 2 subtractions, 9 additions, and 16 multiplications de Casteljau form 2 subtractions, 9 additions, and 18 multiplications
5
Jung Lee, Computer Graphics Laboratory Korea University 5 Degree Elevation Degree-elevated to (n 0 +1, n 1 ) Degree-elevated to (n 0, n 1 +1) Degree-elevated to (n 0 +1, n 1 +1) Degree-elevated control points
6
Jung Lee, Computer Graphics Laboratory Korea University 6 Degree Reduction Let the degree-reduced surface m 0 n 0, m 1 n 1 Constraint The endpoints of the two curves are same Two choices for the extension to rectangle patches The four corner points match between the two patches Least-squares fit to construct the remaining control points Process Degree-reduce the four boundary curves first Compute the remaining interior control points Least-squares fit
7
Jung Lee, Computer Graphics Laboratory Korea University 7 Bezier Triangle Patches Slightly more complicated than Bezier rectangle patches Useful for creating models of arbitrary complexity Equation : (i 0, i 1, i 2 0, i 0 + i 1 + i 2 = n) Evaluation Computing the coefficients To minimize arithmetic operations by saving intermediate products and sums
8
Jung Lee, Computer Graphics Laboratory Korea University 8 Degree Elevation Multiply the original patch by Degree-elevated patch Degree-elevated control points
9
Jung Lee, Computer Graphics Laboratory Korea University 9 Degree Reduction Let the degree-reduced surface m n Constraint The endpoints of the two curves are same Two choices for the extension to triangle patches The three corner points match between the two patches Least-squares fit to construct the remaining control points Process The boundary curves are reduced first Compute the remaining interior control points Least-squares fit
10
Jung Lee, Computer Graphics Laboratory Korea University 10 Bezier Cylinder Surfaces (1 / 2) Bezier rectangle/triangle patches More curvature variation than is needed Cylinder/developable surfaces Curved in 1D and flat Two choice of generation Taking a curve and linearly translating Sweeping operation Taking a line segment and moving it One endpoint is constrained to the originally specified curve Evaluation, degree elevation/reduction can be applied to Initial curve for cylinder surfaces Boundary curves for generalized cylinder surfaces
11
Jung Lee, Computer Graphics Laboratory Korea University 11 Bezier Cylinder Surfaces (2 / 2) Cylinder Surface : Bezier curve : Linear translation : The first-order partial derivatives : Generalized cylinder surface Specifying two Bezier curves With the same number of control points Blending between the two curves Equation : Control points : for 0 i n The first-order partial derivatives
12
Jung Lee, Computer Graphics Laboratory Korea University 12 Nonparametric B-Spline Rectangle Patches How to interpolate a rectangle lattice of scalars for 0 i 0 n 0, 0 i 1 n 1 Componentwise interpolation B-spline polynomial of degree d for 0 k 0 d for 0 k 1 d : intermediate tensor For applications The intermediate tensor can be cached
13
Jung Lee, Computer Graphics Laboratory Korea University 13 Quadric Surfaces Discussion of the general quadratic equation A : 3 3 nonzero symmetric matrix : 3 1 vector c : scalar : 3 1 vector that represents the variable quantities A = R T DR D : diagonal matrix Diagonal entities are the eigenvalues of A R : rotational matrix Rows are corresponding eigenvectors
14
Jung Lee, Computer Graphics Laboratory Korea University 14 Eigendecomposition Rewritten quadratic equation,, Characterize the surface type based on the number of nonzero eigenvalues Three : elliptic cone, ellipsoid, hyperboloid Two : line, union of two planes, elliptic cylinder, hyperbolic cylinder, hyperbolic paraboloid One : parabolic cylinder Determine that the solution is degenerate from Point, line, plane
15
Jung Lee, Computer Graphics Laboratory Korea University 15 Tube Surfaces Swept surface Sweeping a region of space by a planar object along a specified central curve Most common planar object : circle Radius varies with time : r(t) Resulting surface is called a tube surface Equation : : columns of an orientation matrix R(t) pp.286 t : curve parameter [0, 2 ) Surface of revolution The central curve is a straight line
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.