Рекурсивные вычисления
Поверхности Кэтмелла — Кларка определяются рекурсивно, используя следующую схему последовательных уточнений[1]:
Начинаем с сетки в виде произвольного многогранника. Все вершины этой сетки будем называть исходными точками.
- Для каждой грани добавляем точку грани
- Выбираем в качестве точки грани среднее всех исходных точек соответствующей грани.
- Для каждого ребра добавляем точку ребра.
- Выбираем в качестве точки ребра среднее из двух соседних точек грани и двух исходных конечных точек ребра.
- Для каждой точки грани, добавим ребро для каждого ребра грани, соединяя точку грани с точкой ребра для грани.
- Для каждой исходной точки P берём среднее F для всех n (вновь созданных) точек граней для граней, касающихся P, и берём среднее R всех n точек рёбер для (исходных) рёбер, касающихся P, где середина каждого ребра является средним двух конечных вершин (не путать с новыми «точками рёбер», определёнными выше). Переносим каждую исходную точку в точку
- Эта точка является барицентром точек P, R и F с весами (n − 3), 2 и 1.
- Соединяем каждую новую точку с новыми точками рёбер всех исходных рёбер, инцидентных исходной вершине.
- Определяем новые грани, заключённые новыми рёбрами.
Новая сетка состоит только из четырёхугольников, которые, вообще говоря, не находятся в одной плоскости. Новая сетка, в общем случае, будет выглядеть более гладко, чем исходная.
Повторное подразбиение приводит к более гладкой сетке. Можно показать, что предельная поверхность, полученная этим методом, по меньшей мере принадлежит классу
в особых точках и
во всех остальных местах (здесь n означает число непрерывных производных, когда мы говорим о
). После итерации число особых точек на поверхности не изменяется.
Формулу для барицентра Кэтмелл и Кларк выбрали, исходя из эстетических, а не математических, соображений, хотя Кэтмелл и Кларк приложили большие усилия, чтобы строго доказать, что метод сходится к бикубическим B-сплайновым поверхностям[1].
Точные вычисления
Результирующая подразделённая поверхность Кэтмелла — Кларка может быть получена прямо без последовательных улучшений. Это можно сделать с помощью техники Джоса Стэма[en][2]. Этот метод переформулирует процесс последовательных приближений в задачу вычисления экспоненты матрицы, которую можно решить путём диагонализации матрицы.
Программное обеспечение, использующее подразделение поверхностей методом Кэтмелла — Кларка
Литература для дальнейшего чтения
- Derose T., Kass M., Truong T. Subdivision surfaces in character animation // Proceedings of the 25th annual conference on Computer graphics and interactive techniques - SIGGRAPH '98. — 1998. — С. 85. — ISBN 0897919998. — DOI:10.1145/280814.280826.
- Loop C., Schaefer S. Approximating Catmull-Clark subdivision surfaces with bicubic patches // ACM Transactions on Graphics. — 2008. — Т. 27. — С. 1. — DOI:10.1145/1330511.1330519.
- Kovacs D., Mitchell J., Drone S., Zorin D. Real-Time Creased Approximate Subdivision Surfaces with Displacements // IEEE Transactions on Visualization and Computer Graphics. — 2010. — Т. 16, вып. 5. — С. 742. — DOI:10.1109/TVCG.2010.31. — PMID 20616390.
- Matthias Nießner, Charles Loop, Mark Meyer, Tony DeRose. Feature Adaptive GPU Rendering of Catmull-Clark Subdivision Surfaces // ACM Transactions on Graphics. — 2012. — Январь (т. 31, вып. 1). — DOI:10.1145/2077341.2077347., Видеоролик
- Nießner Matthias, Loop Charles, Greiner Günther. Efficient Evaluation of Semi-Smooth Creases in Catmull-Clark Subdivision Surfaces // Eurographics 2012 Annex: Short Papers (Eurographics 2012, Cagliary). — 2012. — С. pp 41–44.
- Wade Brainerd. Tessellation in Call of Duty: Ghosts (неопр.). Видеоролик с докладом, доступен также PDF документ
- Doo D., Sabin M. Behavior of recursive division surfaces near extraordinary points // Computer-Aided Design. — 1978. — Т. 10, вып. 6. — DOI:10.1016/0010-4485(78)90111-2.
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .