Моделирование персонажей

Принятый художником-постановщиком скульпт отправляем в Maya или Houdini.

В Maya, для оптимизации процесса ретопологии, можно импорт геометрии прогнать через GPU Cache.

image.png

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

Затем импортируем созданный Alembic в сцену.

image.png

Полученный Alembic выглядит так, объект с пунктирной сеткой.

image.png

Так сцена Maya весит значительно меньше и ретопить будет гораздо легче.

Ретопологии в Houdini имеет ряд преимуществ. Houdini более стабильна и легче справляется с высоко-полигональными объектами. Кроме того инструментарий для этого процесса имеет несколько удобных функций, которых нет в Maya.

Импортируем хайрезную модель File/Import/Geometry и ныряем в полученный объект.

image.png

В Network View создаем Topobuild и соединяем его правый Input Port с Output Port ноды File. ставим Template Флаг на ноде File и Render Флаг на ноде Topobuild. С курсором во Вьюпорте нажимаем D и производим следующие настройки, выбирая наиболее подходящее отображение референсной геометрии.

image.png

С выбранной нодой Topobuild и курсором в SceneView жмем ENTER на клавиатуре, чтобы активировать выбранный инструмент Topobuild. Вверху слева рабочего окна появятся инструменты для ретопологии. Переключение между этими инструментами осуществляется нажатия на них или SHIFT + 1, 2, 3, 4, 5, 6.

image.png

Инструмент Build с функциями, отсутствующими в Maya.

При вытягивании эджа, и зажимаем G или B в конечной точке, вращаем или скейлируем этот эдж.

То же можно и с вытягиваемыми лупами.

image.png

Придание эджам одинаковой длины Shift+E.

image.png   image.png

Выравнивание ряда эджей Shift+S.

image.png   image.png

Придание выделенным компонентам (пойнты, эджи, фейсы) формы круга Shift+C

image.png   image.png

Инструмент Edge Slide.

Выравнивание лупа по профилю (соседний луп с одной или с другой стороны) Match Profile  или Match opposite Profile. 

image.png  image.png  image.png

Инструмент Split. Выбор количества добавляемых пойнтов колесом мыши или Shifrt+колесо количества добавляемых лупов.

image.png  image.png

Инструмент Skin.

1. протягиванием линий поперек геометрии создаём сечения.

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

image.png  image.png  image.png

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

Паблиш из Maya.

Прежде всего, убедиться, что Maya запущена из ФТ-коннекта.

image.png

Рабочая сцена, до первого паблиша должна быть сохранена на локальном диске в формате Maya ASCII ( ***.ma ).

Запускаем в Maya ФТ-утилиту из меню Ярко. Выбираем App или Publish и проверяем путь к своему ассету, Нажимаем на три полоски справа вверху окна.

image.png

Выбираем Publish.

image.png

Выбираем WIP для незаконченной технически ( нет ЮВ, наличие ненужных для дальнейшего использования в проекте объектов ) сцены. Пишем что-нибудь в Комменты и жмем Publish.

image.png

После того, как художник-постановщик примет сцену, можно её подготовить для паблиша в OUTPUT.

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

image.png

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

image.png

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

image.png

ЮВ, по возможности, должны быть сгруппированы по логике( ЮВ-шеллы, представляющие основную часть объекта - одна группа, ЮВ-шеллы, относящиеся к толщине объекта - вторая группа и т.д. Смотри пример. )

image.png

Если ЮВ-шелл может быть выпрямлен частично, выпрямляем эту часть, с остальными ЮВ можно повторно выполнить UNFOLD или OPTIMIZE.

image.png

В сцене должен присутствовать только один ЮВ-сет с названием map1.

image.png

Все ЮВ-шеллы объекта или группы объектов относящихся к одному материалу должны иметь единый Texel Density.

Правильно.

image.png

Неправильно.

image.png

ЮВ не должны пересекать границы юдимов, располfгаться левее и ниже юдима 1001, правее юдима 1010 и выше юдима 1091.

Между ЮВ-шеллами и между шеллами и границей Юдимов обязательно должен быть паддинг 4-8 пикселей.

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

image.png bkMBbg6669vABmQx-x626sspgdfinufcw-jm8z5tbppxuwiz05-image.png image.png

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

image.png

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

image.png

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

image.png

В этом случае, при выбранных всех объектах сцены, в ЮВ-редакторе не должно быть никаких оверлапов. У объектов с одним материалом может быть несколько юдимов. Глаза должны находиться в первом юдимв. Тексель всех объектов одного материала должен быть единым. Юв  области век должны быть как на голове с закрытыми глазами (про неё отдельно чуть ниже).

image.png

Проверка искажения ЮВ.

Первым шагом, можно воспользоваться нажатием кнопки отображения искажений.

image.png

Но этот инструмент не всегда достаточно информативен. И так как мы создаем модели под сабдив, нам надо проверить, как ведут себя ЮВ в сглаженном состоянии. Для этого не всегда подходит простое использование клавиши 3 на клавиатуре, так как это дает отображение сглаживания с настройками по умолчанию. На этапе рендера, сглаживание производится по алгоритму OpenSubdiv и поэтому необходимо произвести такое сглаживание на модели инструментом Smooth со следующими настройками.

image.png

И включив отображение Checker Map, проверить искажения UV. Особое внимание следует уделить местам границ ЮВ-Шеллов и сетке с неравномерными полигонами. Настроить размер Checker Map можно в окне её настроек.

image.png

После проверки вернуть объект в состояние до сглаживания.

Выделяем объект или объекты.

Нажимаем 1 на клавиатуре, сцена не должна сдаваться с превьюшным сглаживанием (клавиша 3).

Выполняем Unlock Normals и Soften Edge в меню Mesh Display.

Удаляем Вертекс колор, если есть, в Mesh Display/Color Set Editor.

image.png

Проверяем, есть ли невидимые фейсы (Invisible Faces) в Display/Polygons/Invisible Faces.

Если есть,

image.png

в режиме компонентов выделяем полигоны (можно все) и выполняем отмену невидимости

image.png

После нажатия Create или Apply снимаем выделение полигонов и наслаждаемся видением чуда, дьявольское наваждение невидимости исчезнет.

Запускаем утилитку Cleanup (Mesh/Cleanup).

Обратить внимание на Operation. Лучше ставить Select Matching Polygons и произвести починку вручную, т.к. автоматика, как правило, делает это плохо.

У объектов сцены не должно оставаться 1 - Zero Length Edges, 2 - nGons, 3 - Concave Faces,

image.png

Lamina Faces, Nonmanifold geometry,

image.png

Points on Edges

image.png

Проверка Нормалей.

Нормали на одной поверхности не должны быть направлены в разные стороны.

image.png

Проверяется через Dysplay/Polygons/Face Normals

image.png

А можно, чтоб туда не лазить, просто оставлять птичку в меню рабочего окна Lightning/Two Sided Lightnung отжатой, тогда противоположная от направления нормалей сторона полигонов будет просто черной.

image.png

Лечим выделением всейх фейсов с последующим применением Mesh Display/Conform (не всегда выполняет желаемое). Либо выделяем фейсы, которые считаем вывернутыми, и жмем Mesh Display/ Reverse.

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

image.png        image.png

Нормали у объекта должны быть залочены. Если модель - блокинг, то перед локом нормалей нажать сначала Harden Edge. Если полноценный ассет, то сначала Soften Edge.

image.png

У объекта должны быть обнулены все трансформы и удалена История.

image.png

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

А. Atribute Editor/Atributes/Delete attributes.

image.png

Б. Windows/General Editors/Hypergraph:Hierarchy.

Здесь должны оставаться только трансформ-, шейп-, и шейдинг-ноды.

image.png

В. То же можно проверить и в Windows/Node Editor.

image.png

На объектах не должна оставаться информация о Vertex_Color. Проверяем , чтоб бы в Color Set Editor было чисто. Mesh Display/Color Set Editor

image.png

Наименования объектов сцены и материалов должен быть произведен согласно Нейминг-конвенции https://bookstack.yarko.com/books/seiding-6wj/page/neiming-konvenciia-dlia-materialov-seiderov

На всех объектах сцены должны быть назначены материалы только типа Lambert, кроме стекла. На стекло назначаем материал типа Phong, со  следующими настройками. Если стекло, это визор шлема или любое другое, с которым взаимодействует аниматор, то Transparency = 90, Cosine Power = 2.0, Reflectivity = 0.05.

image.png

Если стекло, это часть, куда обычно вставляется 2д или подшоты: смартфоны, экраны и т.д. были обозначены ярким кислотным цветом, чтобы они маячили на бластах и на анимации не забывали при них. Transparency = 60 - 65.

image.png

Не на одном объекте сцены не должен оставаться дефолтовый материал Lambert1.

Все материалы должны иметь свой отличительный цвет.

image.png

Материалы назначаются только пообъектно (один материал - один объект). По фейсам назначать матнриалы нельзя, просто нельзя и все тут!

Что бы проверить, назначен ли материал на фейсы или на объект, открываем Hypershade, выделяем материал и проводим нехитрую операцию, находящуюся по адресу Hypershade/Edit/Select Objects with Materials. Подсветиться должны не фейсы, а объект.

Неправильно

image.png

Правильно

image.png

Название самого материала и название его Шейдинг-Группы должны совпадать. В Шейдинг-Группе после названия обязательно наличие суффикса SG.

image.png

Смотрим в Outliner

image.png

В сцене должны присутствовать только объекты, относящиеся к ассету, взятому в работу, и четыре дефолтовые камеры. Все объекты должны находиться в корне сцены и иметь суффикс _geo. Объекты в сцене НЕ должны находиться ни в каких группах. Если ассет - персонаж, то в сцене должна присутствовать папка TEXTURING, с находящейся в ней головой с закрытыми веками и открытым ртом, расположенной над персонажем.

image.png

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

image.png

Некоторый мусор может оставаться в сцене и после всех операций, описанных выше. Что бы еще немного прибраться отжимаем птичку DAG Objects Only в Outliner/Display

image.png

выделяем все, кроме объектов сцены и материалов, назначенных на них, если они уже назначены, и жмем Delete на клаве, лишнее удалится. Снова нажимаем DAG Objects Only, что бы настроение не портилось от наблюдения этой хрени, которая все равно остается болтаться в Аутлайнере.

Проверяем наличие референсов в File/Referenca Editor.

image.png

Проверяем наличие Неймспейсов в Windows/General Editors/Namespace Editor.

image.png

Проверяем наличие слоев в Layer Editor.

image.png

Избавляемся от лишних материалов в сцене. Hypershade/Edit/Delete Unused Nodes.

image.png


Версия #21
Сергей Морозов создал 11 ноября 2025 16:56:01
Сергей Морозов обновил 14 ноября 2025 18:27:13