Перейти к основному контенту

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

Принятый художником-постановщиком скульпт отправляем в 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.

  • Создание и редактирование UV.

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

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

    Финализация модели.

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

    Нажимаем 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).

    • image.png

    Обратить внимание на 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

      Проверка UV.

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

      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

      • Нейминг.

      Наименования объектов сцены и материалов должен быть произведен согласно Нейминг-конвенции 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

      • Счастливо паблишим сцену.