Аппроксимация поверхностей и карты  смещений  в Maya

Редактор  аппроксимаций  (Approximation   Editor)   (рис. 14.40)  обеспечивает  замену триангуляции  Maya  триангуляцией  mental  ray,  которая достигается за счет  примене­ ния к объектам специальных  инструкций mental ray.  Система mental ray  обеспечивает лучшие  методы   триангуляции   и    большие  возможности   управления   детализацией (например, вокруг отсеченных поверхностей) без  равномерного  увеличения триангу­ ляции  по всей поверхности.

Применять  описание аппроксимации довольно просто. Создайте сферу NURBS, а затем откройте редактор аппроксимаций, выбрав пункт меню Windo w => rendering Editors =>

mental ray => Approximatio n Editor (Окно => Редакторы визуализации => mental гау => Редак-

тор  аппроксимаций).   Этот  редактор  отображает  методы  аппроксимации  для  текущего выделения.  Все они  называются  DeriveFromMaya .  Это означает, что в  настоящее время специальная аппроксимация  к  сфере не  применяется. Поэтому  система mental ray вос­ пользуется настройками триангуляции  из  Майя.

Puc. 14.40. Редактор аппроксимаций: канал mental ray для применения  специальных триангуляцион­ ных инструкций mental ray к объектам

Если выбрать многофрагментарную модель, а затем установить переключатель Single (Одиночная),  то будет создана одна аппроксимация для всех  поверхностей/фрагментов. Если  установить  переключатель Multi (Множественная),  то новая аппроксимация будет создана для каждой поверхности.  Установка флажка Sho w  In  Hypergrapg h (Показать в  гиперграфе) открывает окно гиперграфа и отображает новые связи аппроксимаций.

Откройте редактор атрибутов,  убедитесь, что выбрана сфера, и  щелкните на  кнопке Create (Создать) в  разделе NURBS Tessellatio n (Триангуляция   NURBS)  —  на компью­ терах   Мас   или     в    разделе   surface   Appro x   (NURBS )   (Аппроксимация   поверхности (NURBS)) — в  Windows и  Linux.  В редакторе  атрибутов  появится  новое всплывающее окно, отображающее параметры mental ray,  относящиеся  к аппроксимации  поверхности. В  списке surface Appro x  (NURBS )  (Аппроксимация  поверхности  (NURBS) )  редактора аппроксимаций  появится пункт  mentalraysurfaceApprox1 ,  представляющий   новую, только что созданную  аппроксимацию.

Как только аппроксимация будет создана, она окажется на сцене.  Поэтому  активную аппроксимацию  можно заменить другой аппроксимацией  из  списка на  любой вкладке в редакторе аппроксимаций. Опять щелкните на кнопке Create. Чтобы кнопка Creat e сно­ ва стала доступной, необходимо сначала переключиться в  режим DeriveFromMaya . Но­ вая аппроксимация  создается и  применяется  к  поверхности. Теперь можно выбрать пре­ дыдущую аппроксимацию  из  списка и  щелкнуть на кнопке Assig n (Применить),  чтобы заменить старую аппроксимацию новой.

Предустановленные наборы, метод аппроксимации и стили  

Окно Approximatio n (Аппроксимация) в редакторе атрибутов предоставляет доступ к нескольким параметрам триангуляции.  Ниже кратко изложена суть этой  обширной тех­ нической темы. Подробное объяснение всех методов  триангуляции  можно найти  в  доку­ ментации  по mental ray.

Предустановленные наборы настроек аппроксимации поверхностей

Список  Presets  (Предустановленные)   позволяет  выбрать  настройки,  управляющие параметрами Appro x  Metho d  (Метод  аппроксимации)  и  Appro x  Style  (Стиль аппрокси­ мации) (обратите внимание,  параметр  Appro x Style доступен  только  для некоторых  ме­ тодов). В  списке Appro x  Style  находятся  настройки  качества (от  низкого до  высокого) для  каждого   предустановленного  набора.   Например,  набор  regula r  Grid   Low  Quality   (Обычная  сетка  низкого качества)  содержит меньшие значения секционирования  по  на­ правлениям U и  V, чем  набор  High  Quality  (Высокое  качество), но оба набора  основаны на одном и  том же методе  и  стиле.

Метод аппроксимации поверхности

Параметры  Appro x Metho d (Метод аппроксимации) управляют настройкой  "правил" триангуляции   поверхности.  Например,  должна   ли   адаптивная триангуляция   основы­ ваться на размере  в  пикселях, т.е. должны ли  поверхности, находящиеся ближе к  камере, иметь большую триангуляцию, как в случае метода Length/Distance/Angl e (По длине/по расстоянию/по углу)?  Или  она  должна  основываться на  фрагментах  поверхности, как  в случае методов Parametric (Параметрический) и  regula r Parametric  (Обычный парамет­ рический)? Оба  метода  управляют  триангуляцией   NURBS-поверхности.  Параметриче­ ский метод  используется также  для  полигональных  поверхностей и  во  время визуализа­ ции  осуществляет контроль  секционирования.

СТИЛЬ аппроксимации поверхности

Параметр  Appro x  Style  (Стиль  аппроксимации) обусловливает триангуляцию по­ верхности  на  основе выбранного  метода.  Таким образом,  этот  метод  предписывает,  где должно  иметь место  адаптивное секционирование,  для  какой   части  поверхности  и  как оно должно  осуществляться.

Стиль обеспечивает различные алгоритмы для  управления разделением  поверхности на  треугольники; различие заключается   в  том,  как  система mental  ray  управляет  адап­ тивным секционированием.  Существуют четыре  варианта: Grid,  Tree,  Delauna y  (только для   NURBS-поверхностей)   и  Fine. Fine (Точный) — ресурсоемкий,  высококачественный стиль  разделения  поверхности,  который   создает   треугольники   одинакового  размера. Tree  (Древовидный) — локализация секций древовидным  прогрессивным способом,  со­ кращающим  общую  триангуляцию поверхностей.  Grid  (Сетка)  —  используется  равно­ мерная  сетка  на  поверхности  и  более  плотная  сетка —  в  детализированных  областях;  в результате   получается   весьма  дорогостоящая   триангуляция, которая   может   оказаться невостребованной.  Delauna y   (триангуляция   Делоне)  —   оптимизация триангуляции; осуществляется  триангуляция областей   с   большим  количеством углов;  использование этого метода  может  привести  к  весьма  непредсказуемым результатам.

Проведите эксперименты с параметрами  управления аппроксимацией.

1.    Откройте   сцену   approx_01.m a   с   прилагаемого   CD   и    выберите   сферу NURBS  с  отсеченным  отверстием (NURBSSpherel) .  В  редакторе  аппрокси­ маций становится доступной   кнопка   Edit  (Правка),  если  в  списке surface Approx .  (NURBS )  (Аппроксимация поверхности  (NURBS) )  выбран пункт mentalraysurfaceApprox1 . Щелкните на этой кнопке, чтобы просмотреть на­ стройки  аппроксимации,  а затем  визуализируйте  первый кадр.

2.    Обратите внимание на зазубренные края наружного контура.  Чтобы исправить  это, можно в редакторе атрибутов (mentalraySurfaceApprox1 ) увеличить значения атрибутов  секционирования  по направлениям  U  и  V с  1  до  2.  Удостоверьтесь, что выбран метод Parametric (Параметрический), и выполните визуализацию.

3.    Качество существенно улучшилось, потому  что  при  каждом  увеличении  значения секционирования с помощью параметрического метода  экспоненциально  разделяет­ ся каждый фрагмент (поверхность между  изопараметрическими  линиями);  это зна­ чительно увеличивает  количество  треугольников  для каждого фрагмента поверхно­ сти. Это не совсем  экспоненциальное увеличение;   в данном случае используются  го­ раздо более  сложные вычисления.

4.    Измените  метод аппроксимации (Appro x  Method ) на regula r  Parametric  (Обычный параметрический),  при  котором секционируется поверхность в  целом,  и  выполните визуализацию.  Поверхность выглядит  плохо, так  как  для всей  поверхности  приме­ няются только два  уровня секционирования.  Однако  отсеченная область  выглядит хорошо,  поскольку  для  нее  используется   отдельная  аппроксимация поверхности. Увеличьте значения секционирования по направлениям U U и V до 40и40 , после чего выполните  визуализацию. Следует  заметить, что уровень  секционирования действу­

ет  по-разному для  методов   Parametric (Параметрический)   и    regula r   Parametric   

(Обычный  параметрический).

5.    Создайте в  редакторе аппроксимаций  новую аппроксимацию  Trim  Curve (на  Mac) или Trim Curve Approx . (на Windows и  Linux) при  триангуляции  NURBS  для сферы и  визуализируйте второй кадр. Сохраните снимок в  окне вида визуализации,  а затем в редакторе атрибутов увеличьте значение N Subdivision s (Количество секций) до 4 и   снова выполните визуализацию.   Качество в   отсеченных  поверхностях должно улучшиться. Отсекающая аппроксимация  влияет только на отрезанные области  и  не затрагивает граничные  кривые.

6.    Выберите полигональную сферу и  перейдите к  третьему кадру.  В  разделе Polygo n an d  Sub d  surfaces (Полигональные  и   SDS-поверхности)  редактора  аппроксимаций создайте аппроксимацию Subdivision  (на Маc) или  Subdivision Approx . (на Windows

и  Linux) и  убедитесь, что она применена к объекту, а затем визуализируйте кадр.  Вы­ берите пункт  Edit (Правка) для  этой аппроксимации  и   в   редакторе  атрибутов  ис­ правьте  отверстие,  указав  тип используемого  преобразования,  —  внизу окна выбери­ те значение Quad s То Triangles (Четырехугольники  в  треугольники)  для параметра Conversio n (Преобразование),  а затем выполните  визуализацию. Увеличение коли­ чества  секций, как и  предполагалось, повышает качество и  сокращает время визуали­ зации.  Выполните  визуализацию со значением  секционирования,  равным б, и  обра­ тите внимание   на  повышение качества.  В   случае  метода  Parametric  (Парамет­ рический)  секционирование равномерно увеличивается  по поверхности.

7.    Измените метод  аппроксимации  (Appro x  Method )  на  Length/Distance/Angl e   (П о длине/по расстоянию/по углу),  который  позволяет управлять   секционированием объекта в  зависимости  от камеры и  пространства пикселей.  Визуализируйте  кадр и обратите внимание  на низкое качество. Атрибуты Min  Subdivisio n  (Минимальное секционирование) и Max Subdivision (Максимальное секционирование) определяют, сколько раз можно секционировать треугольник; атрибуты Length (Длина), Distance (Расстояние) и Angl e (Угол) управляют  правилами, определяющими,  когда требует-

ся большее секционирование.  Таким образом, это процесс адаптивного  секциониро­ вания.  Параметр Length (Длина) определяет максимальную  длину для каждого края, параметр Angl e (Угол) определяет максимально  допустимый  угол между  двумя со­ седними гранями в  зависимости от нормалей, а параметр Distance  (Расстояние) пы­ тается осуществлять секционирование  до тех пор,  пока  грани  не  будут удалены от поверхности больше чем на n единиц. Значения  этих трех атрибутов устанавливают­ ся в единицах  сцены или (если установлен флажок View Dependen t (В зависимости от представления)) в  пикселях. Параметр An y Satisfied  (Любой совпавший) указы­ вает на то, что, как  только выполняется  условие  одного из  трех атрибутов,  процесс секционирования прекращается.  Измените значение параметра Length на 1, устано­ вите  флажок Vie w Dependen t и  выполните  визуализацию. Длина каждого края не превышает 1  пикселя.

Источник: Кундерт-Гиббс, Джон,  Ларкинс, Майк,  Деракшани, Дариус, Кунзендорф, Эрик,  и др., Освоение Maya  8.5.:  Пер.  с англ.  – М.:  ООО  «И.Д.  Вильямс», 2007.  – 928  с.:  ил.

По теме:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий