Полигональное моделирование 3d max. Обзор полигонального моделирования

Введение в полигоны

Полигоны – один из типов геометрии, которые используются для создания трехмерных моделей в Autodesk® Maya®. Кроме этого, в Maya имеются еще два вида поверхностей - NURBS и иерархические (subdivision).

Полигоны используются для создания многих типов 3D моделей и широко используются для разработки трехмерных объектов в фильмах, видеоиграх и интернете.

Терминология полигонов

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

При создании полигональных моделей чаще всего используются трехсторонние (треугольники) или четырехсторонние (четырехугольники) полигоны. Maya также поддерживает полигоны с большим количеством сторон, но они используются значительно реже.

Отдельный полигон также называют гранью (face) и определяют как область, ограниченную тремя или более вершинами, и соответствующими им ребрами. Если многие грани соединены между собой, то такой объект называется полигональной сеткой (polygon mesh) или полигональным объектом (polygonal object) . Полигональная сетка может создаваться разными способами. Подробнее о способах создания полигональных объектов см. ниже.

Обычно в полигональной сетке вершины и ребра совместно используются разными гранями. В этом случае их называют общими вершинами (shared vertices) или общими гранями (shared edges) .

Полигональные сетки могут состоять из не связанных между собой частей, которые называются оболочками (shell) . Внешние ребра сетки называются граничными ребрами (border edges) .

Наложение текстуры на полигональную модель

На полигональные модели с помощью UV-координат может быть наложена текстура. Подробнее см. отдельное руководство по работе с текстурными координатами.

Обзор полигонального моделирования

Существуют разные техники по созданию полигональных моделей в Maya:

  • Примитивы – это трехмерные геометрические формы, которые Вы можете создать в Maya. В число примитивов входят, например, сфера, куб, цилиндр, конус, плоскость и многие другие. Вы можете изменить базовые атрибуты примитива, чтобы сделать его более сложным. Можно также разрезать, экструдировать, сливать или удалять разные компоненты примитива, чтобы изменить его форму. Многие 3D художники используют примитивы в качестве начальной точки для создания моделей. Такая техника называется моделированием из примитива.
  • Отдельные полигоны могут быть созданы с помощью средства Create Polygon Tool. Этот инструмент позволяет размещать в сцене вершины, определяющие форму полигональной грани. Вы можете также разрезать или экструдировать полигональную грань, чтобы добавить новые грани к уже созданной. Такая техника обычно используется, если Вам нужно наиболее точно построить модель по заданному контуру. Например, Вы можете описанный прием, если Вам нужно построить сложный 3D логотип, используя импортированное 2D изображение как референс.
  • Полигоны могут также создаваться превращением из имеющихся NURBS или иерархических (subdivision) поверхностей, используя меню Modify.

Нормали полигонов

Нормаль - это воображаемая линия, перпендикулярная поверхности полигона. В Maya нормали используются для определения ориентации грани полигональной грани (нормали граней), или для расчета закраски граней (нормали вершин).

Нормали граней

Передняя сторона грани полигона грфически представляется с помощью перпендикулярного к ней вектора, называемого нормалью грани.

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

При закраске или рендеринге полигонов нормали определяют отражение света от граней, а значит и цвет полигональной модели.

Нормали вершин

Нормали вершин определяют сглаживание закраски между гранями полигона, в отличие от нормалей грани, которые задают видимость или невидимость полигона.

Нормали вершин изображаются линиями, начинающимися в вершине, по одной на каждую грань, которая использует эту вершину.

  • Если все нормали одной вершины имеют строго одно и то же направление (в этом случае они называются общими или мягкими нормалями), то цветовой переход от грани к грани будет плавным.

  • Если нормали вершин указывают в одном и том же направлении для каждой грани (в этом случае они называются жесткими нормалями), переход цвета между гранями будет резким, создавая эффект граненой поверхности.

Продвинутые пользователи могут вручную манипулировать нормалями вершин, чтобы создать видимость жестких граней (складок) и теней без использования дополнительной геометрии. Для этой операции используется пункт Vertex Normal Edit Tool меню Normals. Если нормаль отредактирована вручную, она замораживается. Если Вы разморозите ранее отредактированную нормаль, то Maya автоматически пересчитает ее направление и вернет в положение, принятое по умолчанию.

Рассмотрит основные составляющие теории полигонального моделирования.

Квады против трисов и N -гонов

Итак, какая же разница между квадом, трисом и N-гоном? Ну, квад - это полигон, у которого 4 стороны, трис — это полигон, у которого 3 стороны, N-гон - это полигон, у которого больше 4 сторон.

В процессе моделирования лучше всего придерживаться четырехугольников или квадов. Главным образом из-за того, что дивайдятся они более предсказуемо, лучше деформируются в анимации, а текстуры искажаются меньше всего.

Трисы или треугольники лучше всего использовать там, где их меньше всего видно.

А вот использования N-гонов лучше вообще избегать, поскольку на рендере они могут образовывать странные артефакты, а хорошо раскрасить скин с многоугольниками при риге вообще практически невозможно.

Кроме того, в программах для цифрового скалптинга, таких, как ZBrush and Mudbox удобнее всего работать с моделью, состоящей из четырехгольников.

Радость от полигонов и печаль от многоугольников

Uniform -геометрия

Uniform-геометрия значит, что в процессе моделирования вы стараетесь максимально придерживаться четырехугольников или квадов, размещая их максимально равномерно. Делать риг такой геометрии будет одно удовольствие, она будет отлично деформироваться на анимации. И, несмотря на то, что хорошие текстуры во многом зависят от хорошей UV-развертки, искажаться они будут еще меньше, если геометрия будет состоять из четырехугольников.

В Maya есть прекрасный инструмент Sculpt Geometry, с помощью которого, при условии перехода в режим Relax, можно прекрасно сгладить эджи по краям.

С помощью инструмента Sculpt Geometry можно сгладить эджи

Топология

На первый взгляд расположение эджей не имеет никакого значения. Но это не так.

При моделировании реалистичных персонажей стоит изучить анатомию человека. В таком случае направление эджей и топология должны соответствовать расположению мышц на теле человека, что создаст более правильную деформацию геометрии.

В случае с более мультяшными и стилизованными персонажами пространства для маневра больше, однако, знание анатомии лишним не будет даже в этом случае.

Для корректных деформаций топология должна быть соответствующей с необходимыми эдж лупами

Non-manifold- геометрия

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

Например, создайте куб, выделите один из его эджей и выполните команду Edit Mesh > Extrude. Итак, мы получили non-manifold-объект. Если бы это был лист бумаги, то это был бы сгиб, от которого было бы сложно избавиться. Если выполнить операцию Boolean для такого куба, то все сразу же станет понятным.

Non-manifold-геометрия может доставить немало боли, поэтому старайтесь избегать ее. Инструмент Cleanup, который находится в меню Mesh, поможет решить многие проблемы, связанные с non-manifold-геометрией.

Non-manifold-геометрия может доставить много боли

Каждый эдж должен быть на своем месте

В идеале мы начинаем процесс моделирования с простого примитива, например, куба, которому затем добавляем эдж лупы, экструдим и пр.

При этом важно соблюдать простую сложность, добавляя детали только там, где это действительно нужно. Меньше может быть лучше. Со временем вы будете лучше понимать, как оптимизировать модель, а сейчас просто продолжайте моделить.

Не делайте модель излишне сложной, добавляйте детали только там, где это действительно нужно

Изучайте окружающий мир

Все, что мы пытаемся воссоздать программно является отражением реально существующих вещей. Поэтому самым важным советом станет изучение окружающего мира.

И это касается не только моделлеров, но и риггеров, аниматоров, художников по свету и пр. Задумайтесь, как устроен тот или иной объект, как он освещается, деформируется и пр. Поиск ответов на такие вопросы значительно облегчит жизнь.

Хотите знать больше? Приходите на наши

Max позволяет работать со следующими типами редактируемых поверхностей:
  • Editable Mesh (Редактируемая поверхность);
  • Editable Polу (Редактируемая полигональная поверхность);
  • Editable Patch (Редактируемая патч-поверхность);
  • NURBS Surface (NURBS-поверхность).

Все эти методы построения поверхностей схожи между собой, различаются они настройками моделирования на уровне субобъектов. Переключаясь в различные режимы редактирования субобъектов, можно перемещать, масштабировать, удалять, объединять субобъекты.

В объектах типа Editable Mesh (Редактируемая поверхность) модель состоит из треугольных граней. Для работы с Editable Mesh (Редактируемая поверхность) можно использовать режимы редактирования Vertex ( Вершина ), Edge ( Ребро ), Face (Грань), Polygon (Полигон) и Element (Элемент).

В объектах типа Editable Poly (Редактируемая полигональная поверхность) модель состоит из многоугольников. Для работы с такими объектами можно использовать режимы редактирования Vertex ( Вершина ), Edge ( Ребро ), Border (Граница), Polygon (Полигон) и Element (Элемент) ( рис. 6.1).


Рис. 6.1.

В объектах типа Editable Patch (Редактируемая патч -поверхность) модель состоит из лоскутов треугольной или четырехугольной формы, которые создаются сплайнами Безье. Особенность этого типа редактируемой поверхности - гибкость управления формой создаваемого объекта. Для работы с Editable Patch (Редактируемая патч -поверхность) можно использовать режимы редактирования Vertex ( Вершина ), Edge ( Ребро ), Patch ( Патч ), Element (Элемент) и Handle ( Вектор ).

NURBS Surface (NURBS-поверхность) - это поверхность, построенная на NURBS-кривых. Этот метод создания поверхностей основан на неоднородных рациональных B-сплайнах (Non Uniform Rational B-Splines, NURBS). Чаще всего данный способ используется для моделирования органических объектов, анимации лица персонажей. Этот метод является самым сложным в освоении, но вместе с тем самым гибким.

Преобразование объекта в редактируемую поверхность

Практически любой объект 3ds Max можно преобразовать в один из этих типов поверхностей. Для этого правой кнопкой мыши вызовите контекстное меню , щелкните на пункте Convert To (Преобразовать) и в появившемся контекстном меню выберите один из типов.

Еще один способ работы с редактируемыми поверхностями - назначение объектам соответствующих модификаторов: Edit Poly (Редактирование полигональной поверхности) для преобразования объекта в полигональную поверхность и Edit Mesh (Редактирование поверхности) для преобразования объекта в редактируемую поверхность. Использование модификаторов удобнее, чем конвертирование объекта в редактируемую поверхность, поскольку если результат вас не устроит, вы всегда сможете удалить модификатор и вернуться на этап работы, предшествующий его применению. А операция преобразования в редактируемую поверхность является необратимой. Кроме того, использовать модификаторы удобно потому, что их применение можно комбинировать с другими модификаторами.

Несмотря на то, что каждый из типов редактируемых поверхностей имеет свою область применения, поверхность типа Editable Poly (Редактируемая полигональная поверхность) является наиболее универсальной и используется для моделирования трехмерных объектов чаще, чем другие. К тому же, в последних версиях 3ds Max инструменты для работы с этим типом редактируемой поверхности постоянно совершенствуются, благодаря чему моделирование упрощается. В курсе будут рассмотрены только те инструменты, которые касаются работы с Editable Poly (Редактируемая полигональная поверхность).

Главные инструменты полигонального моделирования

В процессе работы с редактируемыми поверхностями можно использовать множество разных инструментов, причем, они изменяются в зависимости от того, на каком уровне субобъектов вы работаете. Рассмотрим наиболее важные из этих инструментов.

Инструменты выделения

Прежде чем сделать что-нибудь с объектом в 3ds Max, его обязательно нужно выделить. При работе с субобъектами действует тот же принцип. Для выполнения любых операций с субобъектами их нужно выделить, а уже затем применять разные инструменты. В 3ds Max есть набор удобных инструментов, которые заметно упрощают выделение субобъектов. Их можно найти в свитке Selection (Выделение).

В верхней части свитка Selection (Выделение) есть значки для быстрого переключения между уровнями субобъектов ( рис. 6.2).


Рис. 6.2.

Инструменты Ring (По кругу) и Loop (Кольцо) можно использовать на уровнях редактирования субобъектов Edge (Ребро) и Border (Граница). Инструмент Ring (По кругу) дает возможность выделить субобъекты по периметру модели, а Loop (Кольцо) - те, которые расположены на одной линии с выделенными. Рядом с кнопками для вызова этих инструментов находятся небольшие кнопки в виде стрелок, при помощи которых можно перенести выделение на прилегающие области. Один щелчок на такой кнопке - и выделение смещается на одну границу или ребро.

Инструменты Grow (Выращивать) и Shrink (Сокращать) также предназначены для выделения субобъектов. Они позволяют увеличить и уменьшить радиус выделения, соответственно. При нажатии кнопки Grow (Выращивать) к выделению добавляются субобъекты, которые примыкают к выделенным, а при щелчке на кнопке Shrink (Сокращать), наоборот, из выделения убираются крайние субобъекты.

Еще один инструмент Ignore Backfacing (Игнорировать невидимые участки) также позволяет выделять субобъекты. Этот флажок нужно установить в том случае, если необходимо выделить только те области объектов, которые обращены к зрителю.

При помощи переключателя, расположенного в группе настроек Preview Selection (Предварительный просмотр выделения), можно выполнять предпросмотр подобъектов перед выделением ( рис. 6.3).


Рис. 6.3.

При выборе положения переключателя Off (Выключено), которое установлено по умолчанию, вы не заметите никаких изменений. Если выбрать вариант SubObj (Подобъект), то вы сможете наблюдать за тем, какие подобъекты будут выделены, просто перемещая по ним курсор. Если удерживать при этом клавишу CTRL , можно выполнять предварительный просмотр выделения нескольких подобъектов одновременно.

Если же установить переключатель в положение Multi (Несколько), то к этой возможности прибавится еще одна - автоматическое переключение из одного режима работы с подобъектами в другой. Иными словами, если, например, работая на уровне редактирования вершин, навести курсор на полигон, а затем щелкнуть мышкой, будет выделен полигон, и 3ds Max автоматически перейдет на уровень Polygon (Полигон). Эта функция, способна сэкономить не один час при моделировании сложных объектов.

Плавное выделение

Возможность плавного выделения очень удобно применять, когда необходимо, чтобы разные инструменты воздействовали на выделенные подобъекты с различной силой. При использовании плавного выделения на выделенные элементы объекта оказывается воздействие с силой, зависящей от расстояния, на котором эти элементы находятся от центра выделения ( рис. 6.4). Для наглядности степень зависимости подобъектов от выделения показывается в окне проекции градиентным цветом.

Настройки плавного выделения находятся в свитке Soft Selection (Плавное выделение). Для включения этого режима установите флажок Use Soft Selection (Использовать плавное выделение). Расстояние, на которое распространяется воздействие в режиме Soft Selection (Плавное выделение), определяется параметром Falloff (Спад). Характер распространения воздействия на прилегающие подобъекты устанавливается параметрами Pinch (Сужение) и Bubble (Выпуклость). В данном свитке можно также увидеть кривую воздействия на выделенную область. Если значения параметров этого свитка будут изменены, кривая тоже изменит свою форму. Благодаря этому можно визуально определить характер выделения. Есть возможность использовать плавное выделение во всех режимах редактирования подобъектов.

Плавное выделение кистью

Определять характер мягкого выделения можно не только при помощи числовых параметров, но и используя виртуальную кисть. Соответствующие инструменты собраны в области Paint Soft Selection (Плавное выделение кистью). Если до начала плавного выделения кистью включить режим

Что такое, и для чего используется полигональное 3D моделирование?

Полигональное 3D моделирование (Polygonal modeling) является неотъемлемой частью нашей повседневной жизни. С ним современный человек сталкивается практически каждый день, возможно, этого даже не осознавая. Кино, мультипликация, компьютерные игры, виртуальная реальность и т.д. – все это направления, где используется полигональная 3D графика.

С появлением 3D принтеров полигональные модели стали также использоваться для 3D печати объектов.

В связи с возрастающей популярностью 3D принтеров, и сравнительно более простым 3D моделированием по сравнению с поверхностным/твердотельным, форматы полигональных моделей стали больше применять разработчики CNC программ для станков с числовым программным управлением (ЧПУ). В основном ЧПУ по дереву, пластикам и мягким металлам.

Чтобы иметь правильное представление о 3D моделировании, и корректно поставить задачу дизайнеру, достаточно знать несколько основополагающих принципов.

Сегодня существует два основных направления развития 3D моделирования объектов: полигональное и твердотельное (поверхностное).

Основное направление, где используется полигональное 3D моделирование, - 3D графика. Твердотельное/поверхностное - промышленный дизайн.

В зависимости от того, какое конечное изделие Вы хотите получить, выбирается твердотельное (поверхностное) 3D моделирование, либо полигональное.

Например, если вы ходите напечатать на 3D принтере игрушку или вырезать на фрезерном станке 3D рельеф картины из древесины, то следует выбрать полигональный формат 3D модели. Если же собираетесь выпустить любое промышленное изделие, то Вам придется остановить свой выбор на твердотельном формате. (см. раздел «Технологии» Твердотельное / поверхностное 3D моделирование).

Различия двух форматов заключаются в принципах формирования 3D объекта. В полигональном 3D моделировании объекты строятся из полигонов, в твердотельном /поверхностном 3D моделировании объекты строятся из геометрических элементов, таких как линии. кривые, сплайны и т.д., а на основании этих элементов строятся различные геометрические фигуры.

Полигон – это единичный элемент поверхности, представленный в виде треугольника, либо четырехугольника, который размещен в трехмерной системе координат. Фактически полигональное моделирование является потомком растрового двухмерного изображения (всем хорошо известного пикселя), но в трехмерной системе координат.

Качество полигональной 3D модели определяет количество полигонов, и сопряжения их ребер друг с другом. Всегда действует правило - чем больше полигонов, тем выше детализация полигональной 3D модели.

В 3D моделировании, при высокой детализации полигональной модели, не имеет большого значения сопряжение ребер, если Вы собираетесь изготовить данное изделие на 3D принтере, либо на фрезерном станке. Как правило, системы CNC на станках, которые воспринимают данный формат, имеют алгоритмы, которые делают несущественными подобные ошибки полигональной 3D модели.

Полигональные модели не используется для изготовления сложных деталей на станках по причине невозможности обработки детали различными инструментами в процессе механической обработки. А это крайне важное условие, если обрабатывается промышленная деталь. Высока вероятность того, что лицензионное CNC программное обеспечение к современным металлообрабатывающим станкам не будет даже иметь импорта полигональных моделей.

Так что, если у Вас стоит задача изготовить изделие с высокой точностью, с ровными отверстиями, резьбой и т.д, то следует выбрать поверхностное/твердотельное 3D моделирование.

Самым распространенным форматом полигональной 3D модели, воспринимаемым большинством CNC программ, для формирования управляющих программ для станков является - *.STL (Binary).

Менее распространены *.3DS,*.OBJ, *.ASC, *.PLY, *.FCS.

Хотим обратить Ваше внимание на то, что эффективного конвертера для преобразования STL в IGS, STP (твердотельную модель) на текущий момент не существует. Все решения дают посредственный результат, который нельзя использовать без дополнительных доработок 3D модели.

Конвертация полигональной 3D модели из одного формата полигонов в другой обычно производится путем пересохранения файла 3D модели в нужном формате.

Помните, что правильный выбор формата данных перед началом моделирования, и корректная постановка задачи исполнителю Вашего заказа – это основа для получения ожидаемого качества изделия!

ольшинство создаваемых в Maya моделей строится при помощи NURBS-поверхностей и полигональных сеток. Первые интерполируют заданную форму в интерактивном режиме и идеальны для генерирования совершенно гладких поверхностей, а вторые прорисовывают геометрию вплоть до контрольных вершин и больше подходят для моделирования поверхностей, имеющих выраженные твердые края и грани. Это разделение условно, так как в большинстве случаев основой для любой модели могут служить как полигональные сетки, так и NURBS-поверхности. Однако между данными типами моделирования есть весьма принципиальные различия. Так, моделирование на основе NURBS-кривых отличается большей гибкостью и позволяет создавать самые причудливые модели, но они более массивны, сложны в редактировании и дольше визуализируются. В свою очередь, полигональные модели описываются меньшим числом данных, обрабатываются с высокой скоростью и проще в освоении. Поэтому мы начнем изучение основ моделирования с рассмотрения приемов работы с полигональными моделями.

Теоретические аспекты

Типы подобъектов

Любой полигональный объект задается набором полигонов (иначе именуемых полигональными гранями) и потому объединяет множество таких однотипных элементов, или подобъектов, как вершины (Vertex), ребра (Edge) и грани (Face):

  • вершины (рис. 1) - это точки, в которых сходится и соединяется друг с другом любое число ребер;
  • ребра - это линии границы грани. Ребра могут быть видимыми, если соседние грани не лежат в одной плоскости, в противном случае они невидимы;
  • грани (полигоны) - это участки плоскости треугольной или четырехугольной формы, представляющие собой элементарные ячейки сетки. В одной плоскости объекта может находиться множество граней, которые внешне будут совершенно неразличимы.

Редактирование полигональных объектов можно производить как на уровне объекта в целом, так и на уровне подобъектов: граней, ребер или вершин. Чтобы объект стал редактируемым на уровне подобъектов и превратился в полигональную сетку, необходимо нажать клавишу F8, которая также отвечает за возврат к обычному редактированию на уровне объекта. Подобъекты можно вытягивать, масштабировать, вращать и деформировать, удалять, объединять, добавлять и применять к ним множество других операций, изменяя таким образом исходный объект, например обычный примитив, до полной неузнаваемости.

Выбор нужного типа подобъектов осуществляется нажатием клавиши F8, подсвечиванием нужного уровня и блокированием ненужных в строке состояния (по умолчанию в ней устанавливается выбор вершин). Или сразу нажатием клавиш F9 -для перехода в режим редактирования вершин, F10 - ребер и F11 - граней (рис. 2). Выделение интересующих подобъектов производится обычными инструментами выделения Select Tool и Lasso Tool . Кроме того, выделение объектов по щелчку выполняется и в случае применения инструментов Move Tool , Rotate Tool и Scale Tool . При необходимости последовательного выделения нескольких подобъектов при выделении удерживают нажатой клавишу Shift. Узнать общее число имеющихся в объекте подобъектов, а также количество выделенных вершин, ребер и граней довольно просто - достаточно включить режим отображения информации, применив команду Display =>Heads Up Display =>Poly Count (Отображение=>Отображение основных элементов=>Число полигонов) - рис. 3. Основное назначение данного режима - контроль количества выделенных подобъектов.

Методы и принципы полигонального моделирования

Теоретически можно выделить три метода построения полигональных моделей, которые могут применяться как в чистом виде, так и в разнообразных комбинациях. Модель может строиться:

  • вытягиванием из одного-единственного исходного полигона, при этом каждый новый полигон вытягивается из предыдущего и, в ряде случаев, сваривается с каким-то соседним полигоном через вершины;
  • на основе полигональных примитивов, когда берется примитив (куб, сфера и т.п.), а затем из него вытягиваются те или иные подобъекты и при необходимости делятся отдельные грани. Данный метод пользуется наибольшей популярностью;
  • модель создается с нуля, а входящие в нее полигоны не вытягиваются, а рисуются вручную.

Для создания и редактирования полигональных моделей предназначены командные меню Polygons и Edit Polygons , содержащие очень большое количество команд. Однако самыми важными в полигональном моделировании являются команды:

  • Split Polygon Tool (Разбить полигон) из меню Edit Polygons - приводит к разбиению каждой грани на несколько новых граней, что реализуется путем создания новых ребер;
  • Extrude Face /Extrude Edge /Extrude Vertex (Выдавить грань/Выдавить ребро/Выдавить вершину) из меню Edit Polygons - обеспечивает перемещение выделенных граней, ребер и вершин и изменение в итоге формы модели;
  • Smooth (Сгладить) из меню Polygons - увеличивает детализацию объекта благодаря переразбиению на бо льшее число граней; может выполняться как для всего объекта в целом, так и для его отдельных подобъектов.

Чтобы результат моделирования оказался удачным, стоит придерживаться следующих правил:

  • многие модели симметричны, поэтому, как правило, создается лишь одна их половина, а затем генерируется ее зеркальная копия (команда Polygons =>Mirror Geome try - Полигоны=>Зеркальная геометрия), по окончании обе половинки модели сшиваются, например путем булева объединения, а затем полученная модель сглаживается;
  • модели не должны иметь в своем составе лишних подобъектов, которые не нужны для формирования задуманной поверхности, - это лишь усложняет модель и может стать причиной неправильного выполнения тех или иных операций. Поэтому от лишних подобъектов нужно сразу же избавляться - например для уничтожения лишних вершин достаточно переключиться в режим редактирования вершин и удалить ненужные;
  • нередко воспользоваться нужным инструментом не получается, например при попытке создания новой грани не удается провести новое ребро от ребра A к ребру B. Причиной возникновения таких ситуаций является невозможность выполнения операции в данном конкретном случае, так как происходит нарушение существующей полигональной системы плоскостей. Можно попытаться провести ту же операцию, но в обратном порядке, то есть соединить ребро B с ребром A, иначе придется придумывать какое-то иное решение;
  • операция сглаживания (Smooth) существенно увеличивает количество полигонов модели, поэтому не стоит злоупотреблять ею - в противном случае модель может стать слишком сложной: из-за большого числа полигонов с ней трудно будет работать, время визуализации сильно вырастет, а недостаточно мощный компьютер может при ее обработке зависать.

Моделирование при помощи вершин

Вершины являются основным элементом редактирования сетки - достаточно нескольких манипуляций с вершинами, и стандартный примитив можно будет превратить в совершенно другой объект.

Для примера создайте полигональный куб (рис. 4), не снимая выделения, установите режим редактирования вершин, щелкнув на клавише F9. Активизируйте инструмент Move Tool и последовательно перетащите вершины его верхней грани так, чтобы куб превратился в усеченную пирамиду (рис. 5). Кстати, того же самого результата можно достичь путем масштабирования инструментом Scale Tool выполненного сразу для всех вершин верхнего сечения, что в данном случае было бы гораздо разумнее, так как позволяет не потерять симметричность формы.

Вершины можно не только перемещать, но и поворачивать инструментом Rotate Tool (рис. 6). А можно свести выделенные вершины в одну точку и сварить, применив команду Edit Polygons =>Merge Vertices (Правка полигонов=>Соединить вершины) - рис. 7. Правда, нужно иметь в виду, что будут ли сварены вершины в данном конкретном случае, зависит от значения параметра Distance , задающего радиус, в пределах которого производится сваривание выделенных вершин.

Кроме того, для вершин существует интересный способ их стесывания (своеобразный аналог фаски) командой Edit Polygons =>Cham fer Vertex (Правка полигонов=>Стесать вершины), что приводит к созданию из одной грани сразу нескольких новых граней за счет того, что вершины как бы срезаются (рис. 8). После этого к новым вершинам можно применить какие-либо преобразования, например вытянуть из них новые грани, применив команду Edit Polygons =>Extrude Vertex (Выдавить вершину) - рис. 9.

Моделирование при помощи ребер

Как и вершины, ребра можно перемещать, поворачивать, масштабировать и вытягивать. Для проведения экспериментов создайте полигональный куб и установите для него режим редактирования ребер, нажав клавишу F10. Попробуйте вытянуть противоположные ребра верхней грани куба (рис. 10) - возможный результат показан на рис. 11. Если аналогичную операцию провести в отношении двух других ребер куба и удалить верхнюю грань (перейти в режим редактирования граней, выделить грань и нажать клавишу Del), то последний станет напоминать открытую коробку (рис. 12).

Можно добавить к выбранным ребрам фаску, что может пригодиться, например, при создании ограненных моделей. Для примера возьмите обычный шар, нажмите клавишу F10, выделите все ребра и примените команду Edit Polygons =>Bevel (Правка полигонов=>Фаска) - гладкий шар станет граненым (рис. 13).

Моделирование при помощи полигонов

Для экспериментов создайте полигональный куб и, не снимая выделения, переключитесь в режим редактирования полигонов, щелкнув на клавише F11. Полигональные грани в этом режиме при желании можно перемещать, поворачивать и масштабировать обычным способом (рис. 14). Кроме того, для них возможно еще множество интересных преобразований, доступных через меню Polygons и Edit Polygons .

Вначале попробуем разбить одну из граней куба на две, то есть создать новое ребро. Выберите команду Edit Polygons =>Split Polygon Tool (Правка полигонов=>Разбить полигон) - вид указателя мыши изменится и станет напоминать острие ножа, которым и нужно указать обе вершины создаваемого ребра (рис. 15). После этого следует выйти из режима Split Polygon , щелкнув на любом другом инструменте. Разбиение грани позволит применить к созданному ребру любые трансформации - его можно переместить, повернуть, масштабировать и т.д.

Но самое главное - две новые грани также можно подвергнуть разным трансформациям, поскольку они совершенно независимы. Для примера переключитесь в режим редактирования граней и примените команду Edit Polygons =>Extrude Face (Правка полигонов=>Выдавить грань) - появится окно с параметрами команды и управляющие векторы. Стоит заметить, что в отличие от операции Extrude Vertex команда Extrude Face (как, впрочем и Extrude Edge ) управляется не только посредством настройки параметров в соответствующем окне, но и с помощью управляющих векторов. Данные векторы позволяют перемещать подобъекты (как отдельно по одной из осей X , Y или Z , так и сразу по всем трем осям), масштабировать их и поворачивать. Для перемещения по осям подсвечивают одну из стрелок или активируют центр манипуляторов в случае перемещения сразу по всем трем осям, масштабирование регулируется через цветные квадратики, а поворот - посредством голубой окружности (рис. 16).

Рис. 16. Управляющие векторы операции Extrude Face

Щелкните по одному из кубиков управляющих векторов (это приведет к переходу в режим масштабирования) и равномерно немного уменьшите в размере преобразуемую грань. Затем, используя стрелки манипулятора инструмента, передвиньте грань влево (рис. 17). Выдавливать можно не только одну, но и сразу несколько граней. Попробуйте выделить две рядом расположенные грани (рис. 18) и вытянуть из них новые полигоны вышеописанным способом - результат будет напоминать рис. 19. Однако он может быть и совершенно иным, так как особенности вытягивания смежных полигонов также регулируются флажком Keep Faces Together из меню Polygons =>Tool Options (Полигоны=>Настройка опций). По умолчанию данный флажок выключен, что означает независимое вытягивание полигонов. Если его включить, то полигоны будут вытягиваться как единое целое, а результат будет напоминать рис. 20.

Рис. 19. Выдавливание двух граней, флажок Keep Faces Together выключен

Рис. 20. Выдавливание двух граней, флажок Keep Faces Together включен

Можно добавить к выбранным граням прямую фаску, что осуществляется путем вставки плоскостей вместо общих ребер выделенных граней и необходимо при ручном сглаживании формы модели. Для добавления фаски выделите весь объект или его отдельные грани, щелкните на квадратике справа от команды Edit Polygons =>Bevel (Правка полигонов=>Фаска) и в открывшемся окне установите размер фаски (рис. 21).

Любые грани несложно удалить, выделив их и нажав клавишу Del. Попробуем воспользоваться удалением граней для превращения обычного закрытого куба в полый, что позволит применить его для имитации некоторого замкнутого пространства. Создайте обычный куб (рис. 22), нажмите клавишу F11 для перехода в режим редактирования граней, выделите две его передние грани и верхнюю грань (рис. 23). Удалите их и увидите, что оставшаяся часть куба вполне может послужить основой для моделирования помещения-комнаты с полом и стенами (рис. 24). Дополните сцену несколькими произвольными примитивами и разместите их так, чтобы они находились на полу импровизированной комнаты, - возможный вид сцены представлен на рис. 25.

С помощью команды Edit Polygons =>Extract (Правка полигонов=>Извлечь) можно извлекать из модели одну или даже много граней, разбивая ее таким образом на отдельные объекты. Попробуйте создать обычный куб, нажать клавишу F11, выделить его любую грань, щелкнуть на команде Extract и при помощи управляющих векторов перетащить данную грань в любом направлении, что приведет к извлечению грани и ее перемещению (рис. 26). Ту же операцию можно выполнить сразу в отношении множества граней - возьмите сферу, в режиме редактирования граней выделите все грани, находящиеся в верхней трети сферы, и щелкните на команде Extract