CPS 124/296.3
Fall 2001

Modeling Surfaces

Polygons

Most basic representation for 3D systems (previously triangles)
Made up of vertices and edges
Order in which vertices are traversed determines direction of normal

Normals

Used to determine surface lighting (amount based on dot product with light direction)
If polygon is planar, can calculate normal as cross product of edge vectors
If not, approximate by "averaging" using Newell's method
Can be calculated per polygon, flat shading, or per vertex, interpolated shading

Mathematical Representations of Surfaces

Implicit or functional form: F(x, y, z) = 0
Explicit or parametric form: P(u, v) = (X(u, v), Y(u, v), Z(u, v))
Example: sphere

Techniques for Generating Surfaces

Typically start with 2D polygon or curve and extend in 3D
Polyhedra, any closed collection of planar polygons
Since many vertices are shared, avoid redundancy by separating vertex, normal, and face data
Platonic solids
Prisms
Extrusions, any 2D shape that is pulled or swept through 3D space
Segmented tubes
Ruled surfaces
Surfaces of revolution
Quadrics, 3D analogs of conic sections
Superquadrics, quadrics extended with "bulge" factors to produce greater variety
Constructive Solid Geometry (CSG), combine above surfaces via union, intersection, difference

Tessellating Surfaces

Goal: generate fewest number of polygons
Variety of ways to polygonalize ideal surface
Simplest: given function of surface, sample at given intervals
Marching cubes, divide 3D space into cubes, sample at specific points, connect samples

References

Notes on texture mapping surfaces and other surface details

Marching Cubes by W. Lorensen and H. Cline

Quadric-Based Polygonal Surface Simplification by M. Garland

 

Feedback?