Биографии Характеристики Анализ

Что такое полигональное моделирование 3d объектов. Теория полигонального моделирования персонажа

Этот урок послужит хорошим стартом для тех, кто хочет научиться моделировать первоклассных персонажей. Знаменитый в своем круге Jahirul Amin расскажет о важности правильной топологии, равномерной сетки, важности четырехугольных полигонов и многое другое.

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

Введение

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

3-х угольник vs 4-х угольник vs N-угольник

Итак, в чем же разница между 3-, 4- и N-угольными полигонами? Ответ очевиден: у первого 3 стороны, у второго – 4, у третьего – любое их количество, большее 4-х. Если вы моделируете допустим персонажа для дальнейшей его анимации, то рекомендуют использовать только четырехугольники . Процесс деформирования и деления четырехугольных полигонов проходит гораздо проще, к тому же, вы столкнетесь с меньшим искажением текстуры.

Треугольники рекомендуется прятать от своих и чужих глаз. Например, в местах подмышек или в паховой области персонажа. В свою очередь, на многоугольники наложен негласный запрет — их быть не должно. Они провоцируют искажение и доставляют немало хлопот, когда дело доходит до риггинга и редактирования групп вершин (оно же «weight-painting»).

Наконец, модель, которая состоит преимущественно из четырехугольных полигонов, будет легче экпортировать в другие программы моделирования, такие как или Mudbox.

Радости четырех и трехугольных полигонов и ужас N-угольника

Контуры лица, по определению напоминающие N-угольник, нужно максимально приблизить к четырехугольному формату. Мало того – расположение полигонов должно быть настолько равномерным, насколько это в принципе возможно . Вот, к чему призывает одноименная геометрия. Соблюдение этих правил облегчит прохождение стадии риггинга и поможет при деформировании персонажа в процессе анимации. Кроме того, уменьшится масштаб искажений, связанный с применением текстур, хотя здесь не стоит забывать о важности самой UV развертки.

Для выполнения описанной задачи в Maya предусмотрен инструмент Sculpt Geometry.

Инструмент Sculpt Geometry в Maya поможет «разгладить» сетку модели

Отвечает за плавность перехода каждого отдельно взятого эджа (оно же Edge Flow). Звучит, может, и просто, но на практике это весьма коварная штука.

Если вы задались целью создать реалистичного персонажа, перед началом работы рекомендуется изучить основы анатомии. Следуя за строением человеческого тела и естественным движением мышц, аниматор, в конечном счете, получает приближенную к оригиналу копию. Особенно чётко это прослеживается в процессе деформации. Советуем начать с процесса образования морщин и растягивания кожи.

Для стилизованных и мультипликационных персонажей Edge Flow имеет куда меньшее значение. Но, всё же, я настоятельно рекомендую получить хотя бы базовое представление анатомии человека.

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

Она же – немногообразность (non-manifold). Означает, что трёхмерный объект невозможно разрезать и превратить в плоским.

Пример: создайте куб, выделите любое ребро (край) и выдавите его Edit Mesh > Extrude. Перед вами немногообразный объект. (Пример ниже слева) Если бы куб был изготовлен из бумаги, то при развёртывании вы бы получили крестообразную фигуру с нарушенными пропорциями. Использование подобного объекта в булиевых операциях (Boolean operation) практически невозможно.
Чтобы исправить ситуацию, воспользуйтесь инструментом Cleanup.

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

У каждой петли (ребра эджа) должна быть цель

Как правило, моделирование начинается с примитивной фигуры (например, с куба), строение которой впоследствии усложняется путем добавлении петлей ребёр (edge loops).

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


Не усложняйте себе жизнь: детализация должна быть целесообразной

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

Присмотритесь к поверхности, ее структуре и тени. Как она отражает свет? Как происходит процесс деформации? Ответ на эти и другие вопросы поможет вам принять правильное решение при моделировании любого объекта.

Что такое, и для чего используется полигональное 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 модели в нужном формате.

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

В этом уроке Stefan Surmabojov, наглядно покажет вам процесс моделирования высокополигональной стилизованной винтовки в ​​3D Studio Max. Stefan покажет создание каждой части, используя различные техники полигонального моделирования жестких неорганических поверхностей. Вы узнаете, как добавить краю петли в стратегических областях, чтобы модель сохранила свою форму при последующем сглаживании.

Шаг 1

Шаг 2

Выберите переднюю петлю полигонов и немного их увеличьте. После этого, 3 раза примените команду Extrude, пока вы не получите что-то похожее как на изображение ниже:


Шаг 3

Теперь увеличьте каждую отдельную часть с ребрами, (которые мы экструдировали) как показано ниже. После этого один раз экструдируйте переднюю часть полигонов:


Шаг 4

Выберите внутреннее кольцо с полигонами и экструдируйте его, как показано ниже. Затем выделите два наружных кольца ребер по краям и при помощи команды Connect добавьте еще два дополнительных ребра. Эти дополнительные ребра помогут сохранить форму модели, когда мы будем применять модификатор Turbosmooth.


Шаг 5

Добавьте еще одну петлю на задней стороне. И наконец примените модификатор Turbosmooth со значением 2 Iterations:


Шаг 6

Создайте примитив цилиндр (Create> Geometry> Cylinder) и также конвертируйте его в Editable Poly. Удалите полигон с одной стороны, а для другой примените команду Insert, и глубоко экструдируйте полигон внутрь, а затем еще два раза примените команду Insert. При первом добавлении Insert значение должно быть небольшим, чтобы обе петли находились друг с другом:


Шаг 7

Добавьте еще несколько ребер (или как еще говорят петель) по краям, как показано на рисунке. Примените модификатор Turbosmooth со значением Iterations 1.


Шаг 8

Используя Line (Create > Shapes > Line) создайте форму, как показано ниже. Вы можете использовать это изображение в качестве хорошего примера, который облегчит вам процесс:


Шаг 9

Примените к форме модификатор Extrude, а затем преобразуйте его в Editable Poly:


Шаг 10

На лицевой стороне, выберите все вершины и нажмите кнопку Connect, чтобы добавить ребра. Затем удалите полигоны на задней и нижней части. Выберите две передние петли и примените команду Chamfer с Edge Segments 2, чтобы добавить фаску. Пример вы увидите ниже:


Шаг 11

Примените модификатор Turbosmooth со значением Iterations 2 , и расположите все элементы, как показано на рисунке:


Шаг 12

Создайте еще такую ​​же форму, используя Line и примените модификатор Extrude, но на этот раз с большим значением выдавливания:


Шаг 13

Снова добавьте ребра на лицевой и задней стороне, выделив вершины и нажав кнопку Connect (как дели это в шаге 10). Выделите два нижних полигона и выдавите их при помощи команды Extrude:


Шаг 14

Выделите восемь полигонов спереди и два сзади. Выдавите их при помощи команды Extrude, чтобы получить примерно такой же результат, как показан ниже:


Шаг 15

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


Шаг 16

Выберите все внутренние полигоны и удалить их, так как они не будут видны:


Шаг 17

Теперь соедините края создав дополнительные полигоны. Для этого выберите противоположные друг другу ребра и используйте кнопкуBridge. В итоге у вас должно получиться следующее:


Шаг 18

Добавьте одну петлю на задней стороне и две в середине:


Шаг 19

После того при помощи инструмента Cut, добавьте несколько петель чтобы получить четырехугольный полигон на задней стороне:


Шаг 20

На задней стороне выделите два полигона и воспользуйтесь командой Inset, а затем экструдируйте их, как показано ниже. Или выдовите удобным для вас способом:


Шаг 21

С помощью инструмента Move, настройте положение вершин, пока вы не получите форму, как показано ниже. Добавьте дополнительные ребра горизонтали и вертикали, как показано на рисунке:


Шаг 22

Добавить еще ребра, как показано используя выделение Ring и команду Connect:


Шаг 23

Создайте форму Circle (Create> Shapes> Circle). В свойствах Interpolation установите Steps 1.


Шаг 24

Используя инструмент Cut, вырежьте форму «круга», который мы только что создали. Как только вы закончите удалить форму.


Шаг 25

Соедините вершины ребрами, как показано ниже. Используя команду CTR + Backspace удалите выделенные красным цветом ребра. Эта команда позволяет удалить ребра, не затронув при этом вершины и полигоны. Не забудьте удалить лишние вершины:



Шаг 26

Выберите полигон в центре и примените команду Inset с низким значением, а затем экструдируйте его внутрь. Потом еще раз экструдируйте его с более высоким значением, пока вы не получите что-то вроде этого. И в конце удалить сам полигон.



Шаг 27

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


Шаг 28

Добавьте дополнительные ребра и примените модификатор Turbosmooth с Iterations 2


Шаг 29

Создайте еще одну такую же форму при помощи сплайна Line. Затем примените к фигуре модификатор Extrude и преобразуйте его в Editable Poly. Выдавите два нижних полигона:


Шаг 30

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


Шаг 31

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


Шаг 32

Переместите нижние вершины и добавьте дополнительные петли, как показано на примере ниже. Затем примените модификатор Turbosmooth с Iterations 2.


Шаг 33

Создайте новый цилиндр с 18 сторонами. Выберите боковой полигон и примените команду Inset, а затем выдавите этот полигон и еще раз примените Inset. Затем добавить по 4 петли с каждой стороны объекта:


Шаг 34

Теперь выделите другой боковой полигон и примените Inset, а затем выдавите его при помощи команды Bevel три раза, создавая при этом конусообразную форму:


Шаг 35

После этого снова примените Inset, а затем 3 раза выдавите полигон при помощи Bevel , настраивая при этом конусную форму, как показано ниже:


Шаг 36

Выделите четыре вершины в центре и увеличьте их расстояние относительно друг друга по оси X (в моем случае), а затем соедините их ребрами:


Шаг 37

Выберите 3 полигона в центре и при помощи команды Bevel вдавите их внутрь. Затем выберите полигоны как показано на рисунке:


Шаг 38

Примените Inset , а затем вдавите полигоны внутрь, и снова примените Inset.Результат должен выглядеть так:


Шаг 39

Выделите полигоны как показано на рисунке и экструдируйте их внутрь:


Шаг 40

Теперь выберите каждый второй полигона, как показано на рисунке и вдавите их при помощи Bevel:


Шаг 41

Выберите крайние ребра и создайте фаску, при помощи команды Chamfer:


Шаг 42

Добавить фаски и к ребрам, которые находятся на передней стороне:


Шаг 43

И наконец, добавьте петли, как показано на рисунке, и примените модификатор Turbosmooth с Iterations 2


Шаг 44

Создайте сферу (Create> Geometry> Sphere) и конвертируйте ее в Editable Poly. Затем сделайте три копии. В итоге у вас должно получиться четыре сферы. Разместите их как показано на рисунке. Повторите эту же же процедуру и для другой стороны:


Шаг 45

Создать примитив Box (Create> Geometry> Box) и конвертируйте его в Editable Poly. После этого передвиньте его вершины, пока не получите такую форму:


Шаг 46

Выберите четыре крайних ребра и примените Chamfer, чтобы создать фаски. Добавьте дополнительные ребра на каждую сторону, как показано на рисунке:


Шаг 47

Выделите нижние полигоны и выдавите их два раза. После этого переместите вершины, как показано на рисунке:


Шаг 48

Продолжайте выдавливать полигоны и настраивать форму, пока Вы не получите примерно такой же результат:


Шаг 49

Разверните объект и к выделенным полигонам добавьте ребра при помощи команды Inset. Наконец примените к объекту модификатор Turbosmooth с Iterations 2


Шаг 50

Создание ручки для винтовки мы начнем с примитива Box. Создайте его и преобразуйте в Editable Poly. Разместите его вершины, как показано на рисунке:


Шаг 51

Теперь выдавливая полигон за полигоном и настраивая положение вершин попытайтес ьсоздать такую форму:


Шаг 52

В конце форма должна выглядеть так. Это не так сложно сделать, как кажется на первый взгляд:


Шаг 53

Добавьте дополнительные ребра на каждой стороне объекта и настройте их форму. Удалите полигоны на обоих концах формы:


Шаг 54

Курок мы также создадим из примитива Box с такими параметрами: Length Segs: 6 и Width Segs: 2. Конвертируйте примитив в Editable Poly:


Шаг 55

Управляя вершинами придайте форму, как показано ниже. Выделите 3 ряда вершин на задней стороне и примените команду Weld с пороговым значением 2.5, чтобы соединить их:


Шаг 56

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


Существуют несколько видов трехмерного моделирования: каркасное, твердотельное, поверхностное, генеративное и полигональное. Объемная визуализация с использованием полигонов является самой первой разновидностью . Полигональное моделирование 3d max имеет свои нюансы и сложности, однако данный метод по-прежнему пользуется огромной популярностью в сфере 3D-технологий.

Что такое полигональное моделирование

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

Полигональные сетки состоят из таких подобъектов:

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

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

Полигональное моделирование выполняется в таких программах:

3ds Max;
. Maya;
. Alias;
. Rhino.

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


Методики и способы построения полигональных моделей

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

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

Полигональное моделирование предусматривает три основных способа построения объектов визуализации.

  1. Моделирование при помощи вершин - проводятся манипуляции с вершинами, их перемещение, удаление и т.д.
  2. Моделирование при помощи ребер - для придания нужной формы объекту меняется положение ребер, их размеры.
  3. Моделирование при помощи полигонов - грани используются для более сложных операций, например, придания формам выпуклости или наоборот заостренности, сглаживание или вдавливание поверхности, здесь ведется работа с плоскостями.


  1. Лучше использовать четырехугольные геометрические фигуры . Они проще деформируются, что позволяет не тратить время на ненужные манипуляции. Рекомендуется применять как можно меньше треугольников.
  2. Не стоит использовать сложные геометрические фигуры , с большим количеством углов и ребер, это может привести к деформации текстуры.
  3. При создании полигональной модели нужно визуализировать только необходимые элементы , построение дополнительных конструкций усложняет саму модель, если это мелкие детали, их можно сделать, используя текстуры.

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

Этот урок полигонального моделирования в 3ds Max рассказывает о наиболее часто используемых 3d операциях при использовании Edit Poly модификатора (или Editable Poly). Этот метод отлично подходит для создания практически любых объектов в 3ds Max.

Для начала создадим простой примитив Box с пропорциями реального телевизора.

рис.1. Создали исходный 3d примитив - Box


Применим к нашему боксу модификатор Edit Poly

рис.2. Применили модификатор Edit Poly

Нажатием клавиши F4 на клавиатуре в 3ds Max включаем отображение ребер нашей полигональной модели.

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

рис.3. Перешли на уровень полигонов и выделили передний в окне перспективы

Применим к выделенному полигону операцию Inset для создания грани как показано на рисунке. Она послужит основой для создания экрана.

рис.4. Применяем к полигону операцию Inset

Вдавливаем образовавшийся полигон внутрь командой Extrude .

рис.5. Вдавили полигон операцией Extrude

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

рис.6. Увеличиваем детализацию грани операцией Tesselate

Переходим на уровень вертексов и выделяем центральную вершину экрана.

рис.7. Выделили центральный вертекс

Активируем режим мягкого выделения Soft Selection (Благодаря ему мы сможем деформировать объект более плавно). Обратите внимание на параметры Falloff и Bubble. Falloff отвечает за ширину зоны захвата соседних вертексов. Bubble - за форму распределения весов. Цветовое окрашивание наглядно показывает степень захвата.

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

рис.8. Перемещаем центральный вертекс немного вперед в режиме мягкого выделения

Экран готов, тепрь надо подготовить заднюю стенку. Снова переходим на уровень полигонов и выделяем заднюю грань.

рис.9. Выделили заднюю грань телевизора

Применяем к выделенному полигону операцию Bevel (Выдавливание со скосом).
Height - величина выдавливания
Outline - степень сужения

рис.10. Выделили заднюю грань телевизора

Вновь выдавливаем заднюю грань операцией Extrude .
Height - величина выдавливания