Table of contents |
2 Bézier surfaces in computer graphics 3 Bibliography 4 External links |
Bézier surfaces were first described in 1972 by the French engineer Pierre Bézier who used them to design automobile bodies. Bézier surfaces can be of any degree, but bicubic Bézier surfaces generally provide enough degrees of freedom for most applications.
A Bézier surface of order (n,m) can be defined in terms of a set of (n+1)(m+1) control points ki,j for integer indices i = 0 to n, j = 0 to m.
Then the formula for the surface defined by these control points can be written as a mapping of the unit square in the 2-D parameter space (u, v), into the vector space of the control points thus:
Formula
where
is a one-dimensional "blending function", defined as a polynomial in u, weighted by , called the binomial coefficient, representing the number of ways i items can be chosen from n items.
Some properties of Bézier surfaces:
Bézier patch meshes are superior to meshes of triangles as a representation of smooth surfaces, since they are much more compact, easier to manipulate, and have much better continuity properties. In addition, other common parametric surfaces such as spheres and cylinders can be well approximated by relatively small numbers of cubic Bézier patches.
However, Bézier patch meshes are difficult to render directly. One problem with Bézier patches is that calculating their intersections with lines is difficult, making them awkward for pure ray tracing or other direct geometric techniques which do not use subdivision or successive approximation techniques.
They are also difficult to combine directly with perspective projection algorithms.
For this reason, Bézier patch meshes are in general eventually decomposed into meshes of triangles by 3D rendering pipelines. In high-quality rendering, the subdivision is adjusted to be so fine that the individual triangle boundaries cannot be seen. To avoid a "blobby" look, fine detail is usually applied to Bézier surfaces at this stage using texture maps, bump maps and other pixel shader techniques.
The following two paragraphs are probably correct, can someone verify?
A Bézier patch of degree (m, n) may be constructed out of two Bézier triangles of degree m+n, or out of a single Bézier triangle of degree m+n, with the input domain as a square instead of as a triangle.
A Bézier triangle of degree m may also be constructed out of a Bézier surface of degree (m, m), with the control points so that one edge is squashed to a point, or with the input domain as a triangle instead of as a square.
Bézier surfaces in computer graphics
See also:
Bibliography
External links
To do: