07.01.2013 Views

3D graphics eBook - Course Materials Repository

3D graphics eBook - Course Materials Repository

3D graphics eBook - Course Materials Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Subdivision surface 201<br />

Overview<br />

The subdivision surfaces are defined recursively. The process starts<br />

with a given polygonal mesh. A refinement scheme is then applied to<br />

this mesh. This process takes that mesh and subdivides it, creating new<br />

vertices and new faces. The positions of the new vertices in the mesh<br />

are computed based on the positions of nearby old vertices. In some<br />

refinement schemes, the positions of old vertices might also be altered<br />

(possibly based on the positions of new vertices).<br />

This process produces a denser mesh than the original one, containing<br />

more polygonal faces. This resulting mesh can be passed through the<br />

same refinement scheme again and so on.<br />

The limit subdivision surface is the surface produced from this process<br />

being iteratively applied infinitely many times. In practical use<br />

however, this algorithm is only applied a limited number of times. The<br />

limit surface can also be calculated directly for most subdivision<br />

surfaces using the technique of Jos Stam, [1] which eliminates the need<br />

for recursive refinement.<br />

Refinement schemes<br />

First three steps of Catmull–Clark subdivision of<br />

a cube with subdivision surface below<br />

Subdivision surface refinement schemes can be broadly classified into two categories: interpolating and<br />

approximating. Interpolating schemes are required to match the original position of vertices in the original mesh.<br />

Approximating schemes are not; they can and will adjust these positions as needed. In general, approximating<br />

schemes have greater smoothness, but editing applications that allow users to set exact surface constraints require an<br />

optimization step. This is analogous to spline surfaces and curves, where Bézier splines are required to interpolate<br />

certain control points, while B-splines are not.<br />

There is another division in subdivision surface schemes as well, the type of polygon that they operate on. Some<br />

function for quadrilaterals (quads), while others operate on triangles.<br />

Approximating schemes<br />

Approximating means that the limit surfaces approximate the initial meshes and that after subdivision, the newly<br />

generated control points are not in the limit surfaces. Examples of approximating subdivision schemes are:<br />

• Catmull and Clark (1978) generalized bi-cubic uniform B-spline to produce their subdivision scheme. For<br />

arbitrary initial meshes, this scheme generates limit surfaces that are C 2 continuous everywhere except at<br />

extraordinary vertices where they are C 1 continuous (Peters and Reif 1998).<br />

• Doo–Sabin - The second subdivision scheme was developed by Doo and Sabin (1978) who successfully extended<br />

Chaikin's corner-cutting method for curves to surfaces. They used the analytical expression of bi-quadratic<br />

uniform B-spline surface to generate their subdivision procedure to produce C 1 limit surfaces with arbitrary<br />

topology for arbitrary initial meshes.<br />

• Loop, Triangles - Loop (1987) proposed his subdivision scheme based on a quartic box-spline of six direction<br />

vectors to provide a rule to generate C 2 continuous limit surfaces everywhere except at extraordinary vertices<br />

where they are C 1 continuous.<br />

• Mid-Edge subdivision scheme - The mid-edge subdivision scheme was proposed independently by Peters-Reif<br />

(1997) and Habib-Warren (1999). The former used the mid-point of each edge to build the new mesh. The latter

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!