Game Development Reference

In-Depth Information

11.7 Bicubic Surfaces

Our knowledge of cubic curves can be readily extended to bicubic surfaces.

Whereas a single component

()

Q

i
t

of a cubic curve required four geometrical

()

constraints

G
through

G

, a single component

Q

s t

,

of a bicubic surface,

i

+

3

ij

called a
patch
, requires 16 geometrical constraints

G

through

G

. The gen-

ij

i

++

3,

j

3

eral parametric representation of a surface patch is given by

33

()

()()

Q

st

,

=

B

s B t

G

,

(11.89)

ij

k

l

i

++

k

,

j

l

kl

==

00

where the parameters
s
and
t
range from 0 to 1, and the functions
B
,
B
,
B
, and

B
are the blending functions for the type of cubic curve on which the surface

patch is based. Calling the basis matrix corresponding to the blending functions

M
, we can write Equation (11.89) in the form

GG G

r

r

r

G

r

ij

,

ij

,

+

1

ij

,

+

2

ij

,

+

3

r

r

r

r

GG G

G

()

()

i

+

1,

j

i

+

1,

j

+

1

i

+

1,

j

+

2

i

+

1,

j

+

3

()

Qst

r

ij

,

=

SM

T

s

T

T
,

t

(11.90)

GG G

r

r

r

G

r

i

+

2,

j

i

+

2,

j

+

1

i

+

2,

j

+

2

i

+

2,

j

+

3

r

r

r

r

GG G

G

i

+

3,

j

i

+

3,

j

+

1

i

+

3,

j

+

2

i

+

3,

j

+

3

()

23

()

23

where

S

s

≡

1,

ss s

,

,

,

T

t

≡

1, ,

t t

,

t

, and the index
r
represents one of the

()

x
,
y
, or
z
coordinates of

Q

s t

,

. The geometrical constraint matrix
G
for a bicu-

ij

bic surface patch is a 4

array of coordinates.

A bicubic Bézier surface patch is defined by 16 control points. The surface

passes through four of these points at the corners of the patch, and the remaining

12 control points influence the shape of the interior of the patch. A simple exam-

ple is shown in Figure 11.19. Two adjacent Bézier patches have
C
continuity at

the edge where they meet whenever they share the same four control points along

that edge. They have
G
continuity across the edge if the adjacent control points

on either side of the edge are collinear with the control points on the edge, and
C

is achieved if the distances to the control points on either side of the edge are

equal, ensuring that the tangent vectors have equal magnitude. When four Bézier

patches meet at a single point
P
,
C
continuity at that point requires that each pair

of adjacent patches meet with

××

43

1

C
continuity and that the eight nearest control

points are coplanar with
P
.

()

ij
s
Q
is obtained

by finding two tangent vectors and then calculating their cross product. The tan-

The normal vector at a point on a bicubic surface patch

,

Search Nedrilad ::

Custom Search