|
Основы сеточного моделирования3D Studio MAX поддерживает много различных вариантов создания моделей (то есть моделирования). В их числе и сеточное моделирование, представляющее собой моделирование на уровне подобъектов: вершин, ребер, граней и полигонов. Подобъекты можно вытягивать, масштабировать, вращать, деформировать, удалять, объединять, добавлять; можно применять к ним множество других операций, изменяя таким образом исходный объект до полной неузнаваемости. Результатом подобных манипуляций могут быть совершенно разные трехмерные тела — от абстрактных объектов до полностью реальных моделей. Данный прием моделирования может быть применен к разным объектам 3D Studio MAX, однако пока мы знакомы лишь с примитивами, поэтому и приемы сеточного моделирования будем осваивать именно на них. Сразу отметим, что возможности сеточного моделирования гораздо шире, чем удастся рассмотреть в данном уроке. К этой теме мы в дальнейшем будем неоднократно возвращаться, но на более высоком уровне. Теоретические аспектыЛюбой параметрический трехмерный объект, созданный на основе примитива, может быть преобразован в объект типа Editable Mesh(Редактируемая сетка) или Editable Poly (Редактируемая полисетка). Такой объект перестает быть параметрическим и в дальнейшем будет модифицироваться как сетка, то есть на уровне вершин, ребер, граней и полигонов. К объектам типа Editable Mesh относятся геометрические модели трехмерных тел, представленных оболочками в виде сеток с треугольными ячейками. Объекты типа Editable Poly отличаются от редактируемых сеток тем, что их оболочки состоят не из треугольных граней, а из полигонов. Полигоны представляют собой многоугольники, у которых имеются как минимум четыре вершины, и заменяют совокупность двух или более смежных треугольных граней, лежащих в одной плоскости. Поэтому и сетку, составленную из полигонов, в отличие от сетки, составленной из треугольных граней, называют полигональной сеткой, или полисеткой. Многие возможности редактирования объектов Editable Poly и Editable Mesh аналогичны, однако имеются и различия. Редактирование объектов типа Editable Mesh возможно на уровне вершин, ребер, граней, полигонов и элементов, а тип Editable Poly позволяет работать с вершинами, ребрами, полигонами, элементами и границами. Многие операции на первый взгляд совершенно аналогичны для обоих типов объектов, например операции Extrude и Bevel, но требуют разной настройки и зачастую приводят к различным результатам. Кроме того, полигональные сетки, в сравнении с обычными сетками Editable Mesh, обладают рядом дополнительных свойств, в частности допускают сглаживание без использования таких специальных модификаторов, как MeshSmooth (Сглаживание сетки). Напомним, что модификаторы предназначены для модификации объектов и становятся доступными после активизации панели Modify (Изменение). Типы подобъектов и принцип их редактированияКак уже было сказано, значительная часть объектов 3D Studio MAX может быть представлена в виде сеток, состоящих из однотипных элементов или подобъектов, к числу которых относятся вершины, ребра, грани и полигоны (рис. 1). Предназначенные для работы с ними средства скомпонованы по уровням: Vertex, Edge, Face, Polygon, Element и Border (рис. 2 и 3).
Рис. 1. Подобъекты Рис. 2. Уровни Editable Mesh Рис. 3. Уровни Editable Poly Вершины — это точки, в которых сходится и соединяется друг с другом любое число ребер. Для работы с вершинами предназначен уровень Vertex(Вершина). Ребра — это линии границы грани. Ребра могут быть видимыми, если соседние грани не лежат в одной плоскости (тогда они отображаются сплошными линиями), или невидимыми; по запросу пользователя невидимые ребра могут отображаться пунктирной линией. За управление видимостью и положением ребер отвечает уровень Edge (Ребро). Грани — это участки плоскости треугольной формы, представляющие собой элементарные ячейки сетки. В одной плоскости объекта может находиться множество граней, которые внешне будут совершенно неразличимы. Для работы с гранями предназначен уровень Face (Грань). Смежные грани, лежащие в одной плоскости, могут быть объединены в многоугольники-полигоны. В случае преобразования объекта к типуEditable Poly процесс формирования полигонов из граней осуществляется автоматически. В обычной сетке полигон — это просто подобъект, позволяющий выделить сразу все смежные грани, лежащие в одной плоскости. У полигональной сетки нет таких подобъектов, как грани, и вся она состоит только из полигонов, причем некоторые полигоны могут быть и треугольными. За работу с полигонами отвечает уровень Polygon(Многоугольник). Кроме того, сеточные объекты могут редактироваться на уровне Element (Элемент), который используется для работы с группами граней, объединенными в элемент каркаса, а объекты типа Editable Poly — и на уровне Border (Граница), что удобно, например, при вдавливании границ. Редактирование сетчатых объектов можно производить как на уровне объекта в целом, так и на уровне подобъектов: граней, ребер или вершин. Чтобы объект стал редактируемым на уровне подобъектов и превратился в редактируемую сетку, необходимо выделить его и выбрать из контекстного меню команду Convert to=>Convert to Editable Mesh (Конвертировать=>Конвертировать в режим редактирования сетки); можно также применить к объекту модификатор Edit Mesh (Редактирование сетки). Для преобразования объекта к типу Editable Poly из контекстного меню выбирается команда Convert to=>Convert to Editable Poly (Конвертировать=>Конвертировать в режим редактирования полисетки). В обоих случаях это приведет к появлению на панели Modify целой серии свитков:
Выбор нужного уровня подобъектов осуществляется либо подсвечиванием уровня в списках подобъектов Editable Mesh или Editable Poly, либо щелчком по соответствующей кнопке в свитке Selection панели Modify. Для выбора самих подобъектов используются обычные инструменты выделения: Select Object (Выделить объект), Select and Move (Выделить и передвинуть), Select and Scale (Выделить и масштабировать), Select and Rotate (Выделить и повернуть) и Selection Region (Форма области выделения). Чтобы последовательно выделить несколько объектов, при выделении удерживают клавишу Ctrl. Для того чтобы вернуться от редактирования объекта на уровне подобъектов к обычному редактированию, нужно подсветить в списке подобъектов уровень Editable Mesh или Editable Poly. Моделирование при помощи вершинВершины являются основным элементом редактирования сетки — достаточно нескольких манипуляций с вершинами, чтобы превратить стандартный примитив в совершенно другой объект. Для примера создайте примитив Box (Коробка), установив для него длину (Length) и ширину (Width) равными 30, а высоту (Height) равной 40 (рис. 4), и сохраните объект в файле. Не снимая выделения, установите режим, в котором возможно редактирование вершины, выбрав из контекстного меню команду Convert to=>Convert to Editable Mesh (Конвертировать=>Конвертировать в режим редактирования сетки). Чтобы получить возможность манипуляции вершинами, щелкните в свитке Selection на кнопке Vertex (рис. 5).
Рис. 4. Исходный объект Рис. 5. Исходный объект в режиме Editable Mesh — выделены вершины Активизируйте инструмент Select and Move (Выделить и переместить) и последовательно перетащите вершины его основания так, чтобы параллелепипед превратился в усеченную пирамиду. Обратите внимание, что лучше всего начать перемещение вершин в окне проекций Perspective, так как во всех остальных проекциях вершины нижнего основания у параллелепипеда скрыты под верхними вершинами. А затем перейдите в окно проекции Top, что позволит обеспечить более точное положение вершин (рис. 6). Не забывайте, что для более точного перемещения вершин, равно как и объектов, можно напрямую указывать координаты их нового положения в нижней части окна программы. При желании можно перемещать одновременно сразу несколько вершин — в этом случае после выделения вершины довольно часто блокируют, щелкнув на кнопке Selection Lock Toggle (Переключатель блокировки выделения), которая тут же окрасится в желтый цвет. Блокировка сохраняет выделенную область при любых манипуляциях в программе, а разблокировка происходит в результате повторного щелчка по этой же кнопке.
Рис. 6. Результат перемещения вершин основания Вершины можно не только перемещать, но и поворачивать инструментом Select and Rotate (рис. 7) или масштабировать инструментом Select and Uniform Scale (рис. 8). А можно свести выделенные вершины в одну точку, щелкнув на кнопке Collapse (Свести в точку) на панели Modify в свитке Edit Geometry (рис. 9).
Рис. 7. Поворот вершин верхнего основания усеченной пирамиды Рис. 8. Масштабирование вершин верхнего основания усеченной пирамиды Рис. 9. Результат сведения вершин в одну точку Моделирование при помощи реберЧтобы поэкспериментировать, воспользуйтесь ранее созданным и сохраненным параллелепипедом и установите для него режим редактирования ребер — Edge, щелкнув на соответствующей кнопке в свитке Selection. Как и вершины, ребра можно перемещать, поворачивать и масштабировать примерно таким же способом, хотя есть и некоторые отличия. Для поворота ребер можно воспользоваться инструментом Select and Rotate (Выделить и повернуть), а можно активировать возможности свиткаEdit Geometry (Редактировать геометрию) панели Modify, где для поворота предназначена кнопка Turn (Развернуть). Активируйте данную кнопку и кликните на любом ребре параллелепипеда — это приведет к повороту соответствующего ребра, что продемонстрировано на рис. 10 и 11.
Рис. 10. Поворот ребра (стрелкой показано ребро, по которому щелкнули мышью) Рис. 11. Объект после поворота ребра Моделирование при помощи полигоновПереключитесь в режим редактирования полигонов, щелкнув на кнопке Polygon (Многоугольник) в свитке Selection. Многоугольники при желании можно перемещать, поворачивать и масштабировать обычным способом. Кроме того, здесь возможно множество других интересных преобразований, доступных из свитка Edit Geometry панели Modify. Рассмотрим операцию Extrude (Выдавливание), при помощи которой можно создавать выпуклые элементы объекта. Щелкните на кнопке Extrude, затем кликните на любом многоугольнике редактируемого объекта (при этом многоугольник выделится, а внешний вид указателя мыши изменится) и переместите его — в зависимости от направления перемещения выбранных граней на их основе будет создан выпуклый (рис. 12) или вогнутый фрагмент объекта.
Рис. 12. Выдавливание многоугольника Можно добавить к выбранным граням прямую фаску, что осуществляется путем вставки плоскостей вместо общих ребер выделенных граней и совершенно необходимо при сглаживании формы модели. Для добавления фаски щелкните на кнопке Bevel (Фаска), выделите полигон и перемещением мыши подберите подходящий вариант фаски (рис. 13).
Рис. 13. Результат добавления к полигону прямой фаски Данными операциями можно воспользоваться и на более сложных примитивах, например на геосфере, предварительно преобразованной в объект типа Editable Poly (рис. 14) при помощи команды Convert to=>Convert to Editable Poly (Конвертировать=>Конвертировать в режим редактирования полисетки) и переведенной в режим редактирования полигонов. Результат наложения на один выбранный полигон геосферы операции Extrude со значением параметра Extrusion Hight (Высота выдавливания) равным 50 представлен на рис. 15. Разнообразные преобразования, в частности Extrude, можно применить как к одному полигону, так и к группе полигонов, выделив их при нажатой клавише Ctrl (рис. 16), или сразу ко всем полигонам одновременно (рис. 17 и 18).
Рис. 14. Геосфера с выделенным полигоном Рис. 15. Результат наложения операции Editable к одному полигону Рис. 16. Применение операции Editable к группе полигонов Рис. 17. Применение операции Editable ко всем полигонам Рис. 18. Результат наложения операции Editable на все полигоны Особо стоит сказать о сглаживании подобъектов. Как уже было отмечено, объекты, представленные в виде полигональных сеток, могут сглаживаться без применения модификатора MeshSmooth (Сглаживание сетки) — довольно часто его с успехом может заменить операцияMSmooth (Сглаживание) из свитка Edit Geometry (Редактировать геометрию). Попробуйте применить ее, например, к ранее модифицированной геосфере, установив коэффициент сглаживания равным 10 (рис. 19).
Рис. 19. Сглаживание модифицированной геосферы Сеточное моделирование на конкретных примерахЯйцо из шараСоздайте произвольный шар (рис. 20). Преобразуйте объект к типу Editable Mesh, выбрав из контекстного меню команду Convert to=>Convert toEditable Mesh (Конвертировать=>Конвертировать в режим редактирования сетки), и перейдите в режим редактирования вершин, щелкнув на кнопкеVertex. Чтобы обеспечить более плавное деформирование шара, включите режим Soft Selection (Мягкое выделение) с примерно такими параметрами, как на рис. 21, и выделите инструментом Select Object все вершины, расположенные в центральной части и в верхней трети шара. Удобнее выделять вершины не по одной с нажатой клавишей Ctrl, а заключить все выделяемые вершины в прямоугольный контейнер. Немного переместите выделенные вершины вверх при помощи инструмента Select and Move (Выделить и переместить), а затем слегка сузьте выделенную область инструментом Select and Squash (Выделить и сжать). Вновь выделите вершины верхней части шара, но уменьшите число сечений на одно снизу, а затем выполните в их отношении те же операции. Точно такие же операции последовательно произведите еще несколько раз, каждый раз уменьшая размер выделенной области на одно сечение и пытаясь придать объекту форму яйца (рис. 22). Для сглаживания модели примените к объекту модификатор MeshSmooth (Сгладить сетку), выбрав его из списка Modifier List (рис. 23) и настроив его параметры приблизительно так, как на рис. 24, а в результате получите яйцо (рис. 25).
Рис. 20. Исходный объект — шар Рис. 21. Выделение вершин для первой трансформации и параметры режима Soft Selection Рис. 22. Объект после последней деформации — проекция Front Рис. 23. Выбор модификатора MeshSmooth Рис. 24. Настройка параметров модификатора MeshSmooth Рис. 25. Яйцо Гантель из цилиндраСоздайте произвольный цилиндр с 24 сторонами и 9 сегментами высоты (рис. 26). Преобразуйте объект к типу Editable Mesh и перейдите в режим редактирования вершин, щелкнув на кнопке Vertex. При помощи инструмента Lasso Selection Region (Выделение лассо) нужно выделить вершины четырех средних поперечных сечений цилиндра (рис. 27) и масштабировать их инструментом Select and Uniform Scale (Выделить и равномерно масштабировать) в сторону уменьшения так, чтобы сформировать самую узкую область гантели (рис. 28). Поскольку вершины расположены слишком близко, для того чтобы выделение проходило удачно, следует увеличить масштаб изображения и перейти в режим одного окна, щелкнув на кнопкеMin/Max Togge (Переключатель Min/Max). Кроме того, при определенном положении объекта не каждое сечение вам удастся выделить идеально (часть вершин с обратной стороны объекта могут оказаться невыделенными), поэтому возможно, что объект придется неоднократно поворачивать и переходить из проекции в проекцию.
Рис. 26. Исходный объект — цилиндр Рис. 27. Выделение вершин в центральной части цилиндра Рис. 28. Результат масштабирования средней части цилиндра Одновременно выделите по два крайних сечения цилиндра (не забывая удерживать нажатой клавишу Ctrl) и масштабируйте вершины так, чтобы расстояния между сечениями увеличились (рис. 29). Выделите второе с левого края сечение и масштабируйте его таким образом, чтобы расстояние между данным сечением и сечением слева от него стало примерно равным расстоянию между данным сечением и сечением справа от него. Аналогичную операцию проведите для второго с правого края сечения.
Рис. 29. Масштабирование крайних сечений цилиндра Переключитесь в режим редактирования полигонов, щелкнув на кнопке Polygon, и создайте фаски для крайних сечений. Для этого выделите инструментом Select Object крайний левый полигон, щелкните на кнопке Bevel и определите параметры фаски мышью либо введите нужные значения вручную (рис. 30). Второй вариант гораздо надежнее, особенно с учетом того, что придется создавать точно такую же фаску с правой стороны. Создайте аналогичную фаску с правой стороны. Полученная в итоге гантель представлена на рис. 31.
Рис. 30. Добавление фаски с левой стороны Рис. 31. Гантель [ 1 ] |
Loading
|