Subdivision Surfaces

Catmull-Clark Subdivision

Algorithm Overview

After a 1-to-4 split of the faces, vertices are denoted as

The Subdivision Algorithm

\[ \begin{align*} v_{new} &= \frac{1}{N}\cdot F + \frac{2}{N}\cdot E + \frac{N-3}{N}\cdot v_{old} \\ E &= \frac{1}{N} \cdot \sum_{i=1}^{N} \frac{v_i + v_{old}}{2} \\ F &= \frac{1}{N} \cdot \sum_{i=1}^{N} v_{face_{i}} \\ \end{align*} \]


The JavaScript Code