|
Поставляемые вместе с 3DS МАХ
параметрические объекты представляют
собой два основных геометрических
класса, поскольку они могут все
преобразовывать в треугольные каркасы и
лоскуты Безье. С развитием 3DS МАХ и
добавлением дополнительных
геометрических классов способ, при
помощи которого модификаторы
взаимодействуют с геометрией,
приобретает более важное значение.
Архитектура 3DS МАХ может разместить
любое геометрическое определение. В
базовый продукт включены
параметрические, каркасные, лоскутные
объекты и объекты сплайнов.
ПРИМЕЧАНИЕ
Хотя в 3D Studio MAX непосредственно не
входят объекты создания NURBS (Non-Uniform
Rational B-Spline, неоднородные
рациональные В-сплайны) или инструменты
редактирования, она включает в себя
класс объектов NURBS для пользователей
3DS МАХ SDK, разрабатывающих приложения.
4D Vision, разработчик 3DS МАХ, заявил о
подключаемом элементе NURBS для 3DS МАХ,
который называется "Sculptor"
(скульптор). Этот подключаемый элемент
обещает стать очень емким инструментом
моделирования NURBS.
Все становится гранями
Модели 3DS МАХ основаны на
геометрических классах. В общем случае
объекты начинаются с высокого уровня и
по мере необходимости преобразуют сами
себя в более простые уровни.
Параметрический объект можно
преобразовать в лоскут, который затем
преобразуется, например, в каркас из
треугольных граней.
Нерасширенная 3DS МАХ включает в себя
следующие геометрические классы и
связанные с ними инструменты.
Геометрический класс определяет способы
отображения и редактирования
производного объекта. В настоящее время
3D Studio MAX поставляется всего с
четырьмя классами; однако разработчики
достаточно быстро добавляют заказные
классы. Поэтому понимание эволюции
геометрии имеет важное значение для
моделирования.
Работа с лоскутами по сравнению с
работой с каркасными примитивами
По умолчанию примитивы 3DS МАХ
преобразуются в каркасы при
редактировании их модификаторами. Те же
примитивы могут работать как лоскуты,
если сразу после создания параметров
применить модификатор EditPatch. Поэтому
EditPatch является первым модификатором
в стеке. Помните, что позже можно
вернуться назад и вставить модификатор
EditPatch после других примененных
модификаторов. Объекты Box, Cylinder,
Tube, Cone, Torus и Teapot преобразуются
в квадратные лоскуты, объекты Sphere - в
треугольные лоскуты, а каждая грань
объектов Hedra и GeoSphere преобразуется
в треугольные лоскуты.
К сожалению параметры разбиения на
пластины для примитивов игнорируются при
добавлении модификатора EditPatch
непосредственно после создания
параметров в стеке. Если требуется
отредактировать объект посредством опций
разбиения на пластины, необходимо
поместить модификатор, который сначала
преобразует его в каркас (например,
модификатор XForm), а затем применить
модификатор EditPatch для работы с
интерполированными лоскутами.
СОВЕТ
При добавлении модификатора EditPatch
для преобразования примитивов в лоскуты
лучше всего сразу же выключить состояние
выборки Sub-Object, если необходимо
применить модификаторы ко всему объекту.
Модификаторы Edit всегда начинаются в
состоянии выборки Sub-Object. Если
перейти непосредственно к добавлению
дополнительного модификатора, эффект
нельзя будет увидеть, поскольку стек не
показывает объект, а скорее пустой набор
выборки. Перед тем, как можно будет
увидеть эффект другого модификатора в
стеке, необходимо взять объект вне
выборки Sub-Object (или выбрать
что-либо).
Лоскутные объекты по сравнению с
каркасными объектами реагируют на
модификаторы по-другому. Рзультирующие
кривые деформированных лоскутов
поверхности являются более неуловимыми,
чем в случае, при котором тот же самый
объект деформируется как каркас. Это
происходит ввиду того, что вершины
каркаса являются явными, в то время как
лоскут представляет собой результат
решения уравнения.
Обычно при работе с объектами как с
лоскутами люди, занимающиеся
моделированием, хотят сохранить
геометрию лоскутов как можно дольше. При
этом знание того, когда операция
заставит геометрию преобразоваться из
лоскутов в грани, приобретает очень
важное значение. Следующие модификаторы
всегда преобразуют геометрию в грани:
EditMesh (отредактировать каркас),
Material (материал), Normal
(нормальный), Smooth (сгладить),
VolSelect (выбор объема), MeshSmooth
(сгладить каркас) и Relax (ослабить).
Новый геометрический класс
Понять геометрические классы гораздо
проще, если представить себе совершенно
новый класс. В целях последующего
рассмотрения назовем его классом FOO.
Сначала необходимо решить как
определяется класс FOO или из чего он
состоит. Каркасные объекты 3DS МАХ
состоят из граней, построенных на
вершинах с ребрами, в то время как
объекты с лоскутами Безье состоят из
лоскутов с вершинами управления и
тангенциальными ручками. Класс FOO может
состоять из чего угодно. Он может иметь
узлы, несущественные детали, ручки,
кривые, меридианы, контуры, сетки,
решетки и прочее. Для целей рассмотрения
будем говорить, что объекты FOO имеют
"сетки", состоящие из "контуров".
Чтобы быть видимым в видовом окне и, в
конце концов, визуализированным, объект
FOO должен знать как преобразовать
геометрию класса FOO в элементы каркаса
(или, точнее, в TriFaceMesh). Фактически
каждый объектный класс 3D Studio MAX
должен иметь возможность преобразования
в каркас с треугольными элементами. Это
требование определяет общий знаменатель
для всех модификаторов для возврата в
такое состояние, при котором каждый
модификатор сможет работать на любом
объекте. Следующий вопрос заключается в
определении, подходит ли геометрия FOO
для преобразования в лоскуты Безье или,
может быть, в дополнение от независимых
разработчиков. С этого момента мы будем
говорить, что объект FOO можно
преобразовать только в грани.
Класс FOO добавляется к меню создания и
появляется возможность создания объектов
FOO. Но как редактировать их после
создания? Выбрав объект FOO, необходимо
перейти к панели Modifier. Появляются
только инструменты, моделирующие объект
FOO. Поскольку в элементы каркаса можно
преобразовать каждый геометрический
класс, несколько модификаторов, подобных
Bend, Taper, Twist и EditMesh, доступны.
EditSpline, Extrude и Lathe, работающие
только на сплайнах, приобретают серый
цвет (т.е. недоступны). Модификатор
EditPatch также приобретает серый цвет,
поскольку объекты FOO нельзя
преобразовать в лоскуты Безье. В случае
применения модификатора Bend, последний
просматривает геометрию в конце
конвейера и не зная, что такое FOO,
запрашивает лоскуты. FOO отвечает, что
его нельзя преобразовать в лоскуты,
поэтому Bend запрашивает элементы
каркаса. Объект FOO преобразуется в
каркасный объект с треугольными
элементами, после чего инструмент Bend
продолжает свою обычную работу. После
изгиба модификатор EditPatch теряет
серый цвет и становится доступным для
использования. Это связано с тем, что
каркасный класс 3D Studio MAX знает как
выполнять преобразование в лоскуты
Безье.
Если необходимо отредактировать объект
FOO в его собственной манере, текущая
опция должна перейти в нижнюю часть
стека Edit History (история
редактирования) и уточнить параметры FOO.
При этом требуются модификаторы, умеющие
манипулировать геометрией FOO. Для
редактирования FOO необходимы
инструменты редактирования FOO.
Создается класс модификаторов FOO,
сохраняющий и модифицирующий собственные
сетки и контуры FOO. Ввиду
исключительной полезности основных
осевых деформаций команды Bend, Taper,
Twist, Skew и Stretch модифицируются
так, чтобы они также могли воспринимать
и манипулировать классом FOO. Теперь
после сгибания объекта FOO он сохраняет
геометрию FOO и модификатор EditFOO
по-прежнему существует после применения
Bend. В этой точке нужно применить
EditMesh и геометрия станет каркасом.
Реальной возможностью мог бы стать новый
объект NURBS, который легко
преобразовать в лоскуты Безье и элементы
каркаса. До тех пор, пока вы работаете с
новыми инструментами моделирования NURBS,
модель остается в виде NURBS. В случае
применения основного модификатора
(который ничего не знает о NURBS) модель
преобразуется в лоскуты и при
необходимости - в грани. То же самое
применимо для сплошных объектов и
многоугольного моделирования.
Независимо от того, является ли объект
новым или существующим, система для
представления его геометрического класса
одинакова. Во время применения
модификатора к объекту модификатор
находит, что геометрический класс
объекта может представить себя
самостоятельно и работает на наиболее
возможном высоком уровне. Если
модификатор понимает текущий
геометрический класс, преобразование не
происходит - модификатор просто
оказывает требуемое влияние на модель.
Если текущая геометрия является классом,
не воспринимаемым модификатором,
последний преобразует его в более
простой класс, которым может
манипулировать, и затем продолжает
работу.
Геометрия в 3DS МАХ развивается в
соответствии с требованиями. Объекты
сохраняют самый высокий порядок до тех
пор, пока не потребуется преобразование
в более низкий, более простой класс.
Геометрия высокого порядка сама себя
преобразует в более простую геометрию,
если применяется модификатор, который не
может работать на данном геометрическом
классе. Общим знаменателем для всех
объектов является треугольный элемент
каркаса. Поскольку все объекты 3D Studio
MAX должны иметь возможность
преобразования в соответствии с этими
потребностями, все модификаторы могут
работать на любом заданном объекте -
хотя для этого они могли бы
преобразовать его в элементы каркаса.
Большинство модификаторов 3DS МАХ умеют
обрабатывать элементы каркаса или
лоскуты, сохраняя все, что попадется им
под руку, и проходя через результат
модификации заданного геометрического
класса. |