Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Профессиональная_3D_анимация._Риггинг_и_деформа...doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2 Мб
Скачать
☆

Раздел 2

Риггинг

Глава 5

Планирование и организация риггинга

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

Вычисление геометрии и начало с чистого листа

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

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

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

Один из способов оградить производство от возможных проблем – это быть вовлеченным в работу с материалом ещё на стадии создания концепта. Чем раньше вы изучите дизайн модели и, если это возможно, исправите ошибки до того, как дизайнер закончит с ней работать, тем свободнее вы будете работать с трехмерной версией. Дешевле и быстрее сделать исправления еще на бумаге, чем ждать сборки.

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

Взглянув на несколько замечательных примеров высококачественного моделирования и контроля замыкания граней от Рамахана Фолка, вы можете почерпать хорошие идеи о том как должна выглядеть готовая к риггингу модель. Правильное расположение ребер каркаса модели непосредственно влияет на то, как выглядит модель во время деформации. Ребра полигонов должны обтекать природные линии мускулатуры персонажа и давать детализацию, достаточную для полного спектра движений (как, скажем, в плечах). Если у вас слишком мало вершин, то анимированная модель не будет держать объем; точно так же слишком большое количество вершин будет замедлять привязку во время скиннинга и усложнять работу, вместе с общим замедлением файла (рис.5.1 – 5.3).

@Рис. 5.1. Вот отличный пример хорошо структурированных граней и смешения анатомии существа. Любезно предоставлено Рамаханом Фолком, fx3dartist@msn.com

@Рис. 5.2. Эта модель – замечательный пример, показывающий, какой детализации вы можете добиться, сохранив легкость модели. Любезно предоставлено Рамаханом Фолком

@Рис. 5.3. Это изображение лица показывает иерархические поверхности в Maya с очень хорошими гранями, повторяющими подлинную структуру мускулов лица. Ассиметричные каркасы, подобно этому, более реалистичны, но сложнее поддаются риггингу. Любезно предоставлено Рамаханом Фолком

Начальные вычисления: размер и масштаб

Когда модель попадает под ваше управление, вы должны помнить о двух вещах: размере и масштабе. Опытные моделеры сделают большинство проверок за вас, особенно если Вы уже работали с ними раньше, но так происходит не всегда. Иногда люди делают ошибки или что-то пропускают, и вы должны поддержать их и исправить то, что они упустили.

Первое, что нужно проверить – правильность размера и масштаба модели. Нет ничего хуже, чем сделать риггинг персонажа и обнаружить, что размер был не тот или что вы работали в метрической системе, а надо было в дюймах. В большинстве 3D пакетов есть инструменты для измерения объектов. Используйте эти инструменты, чтобы замерить Вашего персонажа (рис. 5.4). У вас должна где-то быть документация, которая дает Вам знать, какие единицы измерения используются в производстве, а также листок для персонажа с данными о его правильной высоте в метрах или футах. Еще один способ проверить соответствие размера персонажа – сделать быстрый общий набросок человека в масштабе данного проекта и добавить любые другие заметки о размере персонажа и рекомендации, относящиеся к каждому персонажу. Это визуально покажет вам, насколько большим должен быть персонаж, в дополнение к применению инструмента Расстояние (Distance tool).

Потратьте время на двойную проверку, потому что если вы захотите экспортировать ваш персонаж в другую программу с другими единицами измерения, в процессе экспорта масштаб персонажа может измениться, что вызовет еще большие проблемы при выявлении общих неисправностей производства. Довольно легко пропустить возникновение отрицательного масштаба у модели, которая была отражена. Это может случиться даже с главным каркасом, в зависимости от того, как вы прикрепляете два объекта друг к другу. Можно быстро проверить файл со сложной геометрией, сделав быстрый экспорт в формате .FBX, и тогда будут показаны объекты с отрицательным масштабом (рис. 5.5). Также вы можете импортировать файл обратно в Maya или загрузить экспортированный файл в плеер QuickTime Movie с .FBX для QuickTime, чтобы визуально проверить файл на неполадки, возникшие при экспорте.

Врезка. Плагин .FBX для Maya от Alias|Kaydara и QuickTime можно найти среди других инструментов на http://www.alias.com

@Рис. 5.4. Чтобы проверить размер персонажа, пользуйтесь инструментом Расстояние в Maya или Измерение (Measure tool) в Max

@Рис. 5.5. Ищите ошибки в размере с помощью экспортера .FBX

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

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

Заданные позы и свободное положение

Может ли быть у персонажа более одной позы? Первоначальные позы персонажей – часть построения файла модели. Эти положения или позы могут различаться в каждой модели, и на самом деле это индивидуальный выбор технического директора по персонажам и моделера, каким образом они бы хотели настроить позы персонажа для риггинга.

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

Поза да Винчи

Главный пример дискуссий, который Вы можете обнаружить на многих Web-форумах это – правильное позиционирование плечей и рук и тут широко применяется термин «поза да Винчи», но большинство людей имеют в виду позу, в которой руки держатся прямо, а ноги широко расставлены. Эта поза подходит для моделирования персонажа и для упрощения текстурирования, но когда дело доходит до деформаций, лучше снять напряжение и давление с большинства частей модели. Это значит, что вы должны поставить плечи в расслабленное положение, а руки должны быть подняты по бокам под углом 45 градусов (рис. 5.6. и 5.7). Просто поднимите руки по бокам так высоко, как только можете, но чтобы ключицы и плечи не поднимались. Затем, если нужно, вы можете перевести руки в этом положении дальше вперед и отвести назад к бокам, руки при этом слегка согнуты, чтобы трицепсы и бицепсы были расслаблены, и ни один из этих мускулов не был напряжен больше, чем другой. По этому поводу на Web-форумах ведутся длинные дискуссии. Одно из лучших обсуждений появилось на форуме скульптуры Spiraloid Digital под заголовком «Да Винчи или не да Винчи?»

Врезка. Вот прямая ссылка на тему «Да Винчи или не да Винчи?» форума Бэя Рэйта (Bay Raitt): http://cube.phlatt.net/forums/spiraloid/viewtopic.php?TopicID=195

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

@Рис. 5.6. Вот поднятая рука. Как видите, плечо напряжено, но движение ключицы не учитывается при моделировании

@Рис. 5.7. По сравнению с рис. 5.6, эта рука более расслаблена; например, расслаблены ключица и плечо

Сложные позы

В любом случае лучше всего создавать модель в наиболее быстрой для моделинга позе. Таким образом моделер сможет перемещать модель в наиболее открытую для создания развертки и текстуры позу. С таким исходным моделированием и технический директор, и моделер могут вновь отрегулировать позу, учитывая будущий риггинг и скиннинг. Таким образом, в итоге получим три положения: позу моделирования (model pose), позу для текстурирования (texture pose) и для риггинга (rig pose). Это могут быть разные файлы или один - с тремя целями морфинга, установленными, чтобы придать модели нужную позу.

Поза, удобная для скиннинга и деформации, не обязательно хороша в качестве начального положения для риггинга; контроль анимации может выйти за пределы осей и заставить аниматоров проделать дополнительную работу по управлению ключевыми кадрами. Учитывая это, после скиннинга может потребоваться четвертое состояние для облегчения риггинга (рис. 5.8). Сочленения можно вращать назад, строже выравнивая по свободному пространству, а ноги ставить ровнее вдоль линии тела. Раз установив положение, можно сделать весь риггинг. Также эта поза подойдет, если вы собираетесь использовать данные motion capture в операции переориентации в Maya с помощью редакторов Trax или Motionbuilder. Можно несколькими способами добиться того, чтобы при изменении модели обновлялись все позы. Что касается каркаса, то можно просто создать ряд целей морфинга в главном файле, который содержит все позы. Затем Вы можете создать отдельные файлы каркаса в этих позах вручную или автоматически. В условиях большой команды вы, скорее всего, захотите автоматизировать эту систему создания поз для отдела моделирования.

@Рис. 5.8. Взгляните на разницу между позой для скиннинга и полностью выровненной позой для риггинга

Поза для риггинга

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

Используя несколько различных методов, вы можете сохранить эти позы отдельно для риггинга и для скелета. Один из способов – установить ключевой кадр для ваших управляющих точек и сохранить эту анимацию с помощью плагина animImportExport. Используя узлы персонажей, сохраняйте различные позы в Trax Editor или используйте один из бесплатных MEL-сценариев, которые позволяют вам сохранять и применять позы к вашему персонажу. Также Вы можете попробовать отключить ограничители и ИК контроллеры, чтобы скелет вернулся в позу первичной привязки. Если это не действует, то в данном случае можно взять копию скелета находящегося в нужной позе первичной привязки и привести регулировки риггинга в соответствие с позой скелета, затем сохранить эту позу одним из описанных выше методов.

Другой способ решения проблемы разделения позы риггинга и позы первичной привязки – сделать скелет первичной привязки (bind skeleton) и скелет риггинга (rig skeleton). Через соединения и ограничители скелет первичной привязки управляется настраиваемым скелетом риггинга, и в любой момент вы можете разъединить их, чтобы персонаж вернулся к позе первичной привязки. Вы должны знать об этих опциях из инструментария технического директора. Это дает основание тому, почему двухскелетная система может быть хорошим подходом, что показано в главе 13.

Хитрость этих методов заключается в том, что файл позы и файл риггинга не разделены, потому что без поз, вы можете не суметь вернуть персонаж к положениям, нужным для скиннинга или экспорта в игры, где особенно важно убедиться в том, что поза, на которой основана вся анимация, не потеряна. Если она потеряна, то всю анимацию нужно делать заново. По этой причине вы, возможно, захотите запомнить несколько способов сохранять эти позы риггинга или скелета в файле. Клипы Trax Editor’а отлично выполняют эту функцию, т.к. могут быть сохранены с файлом или узлом персонажа или экспортированы во внешний файл. Это дает вам некоторую избыточную информацию. Вы также можете сохранить позы в файл со script-узлом, управляющим заданным атрибутом, чтобы загрузить позу и вернуть персонаж в нужное состояние, позу скиннинга или риггинга.

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

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

  • соответствует ли геометрия надлежащим типам: NURBS, полигоны или иерархические поверхности?

  • имеет ли поверхность достаточную детализацию в областях, которые будут подвергнуты деформации?

  • если модель создана для игры, произведена ли триангуляция поверхности?

  • есть ли отдельные или несоединенные вершины, или имеют ли вершины данные xform?

  • правильны ли нормали (имеется в виду, что они вывернуты наружу и не инвертированы)? Заморозка трансформаций выявит плохие нормали, если вы не рассматриваете двусторонние поверхности. По умолчанию в Maya включен атрибут “opposite”, чтобы поверхности отображались корректно в окнах вьюпорта и при рендеринге, но нормали всё равно будут инвертированы, а это нужно исправить. (Напомню, вот почему вы должны в первую очередь решать проблемы с трансформацией.)

  • Сделана ли уже развертка модели и правильно ли выставлены координаты UV-маппинга, или перенесете ли Вы окончательные UV-координаты в файл риггинга позже? Хорошо бы проследить, какие обновления нужно будет сделать позже. Это может быть сделано прямо в файле, во внешней базе данных или в системе управления проектами. Если вы храните данные об обновлениях в файле, добавьте запись в раздел заметок об объекте, или сделайте текстовый узел “I” $$ Автор очевидно ставит букву I в качестве сокращения слова Information. – прим ред. $$ (к примеру) для хранения всех заметок по сцене.

  • также проверьте именование и группирование. Объекты должны быть названы осмысленно, а не просто по геометрическим именам, как, например, sphere234 или cube01. И узел трансформаций, и shape-узел должны быть названы надлежащим образом, исходя из стандартов производства. Хороший пример – название частей модели с префиксом Character_GEO_имя или MESH_Character_имя. Подойдет любое слово, которое даст вам понять, каков тип конкретного объекта. Имя персонажа помогает выйти на другой уровень фильтрования выделения в файле с большим числом персонажей.

После того как вы закончили работу с моделью и изменения, которые считали необходимыми, сделаны, вам нужно будет создать чистый файл. Есть множество способов удалить историю и привести в порядок файл в Maya, но Вы можете легко пропустить какой-нибудь дополнительный узел или разбить соединение, о влиянии которого на модель вы не знали. Один из самых быстрых путей создания чистого каркаса модели без истории – экспортировать его из Maya в файл .FBX или .OBJ. Мы используем формат .FBX для экспорта во что-то вроде OBJ из-за его проверенной совместимости. Файловый формат .FBX стал стандартом обмена данными в программном обеспечении для 3D, включая моделинг, анимацию, скелеты, материалы и так далее. Поэтому удобно сначала экспортировать в .FBX, не только чтобы создать чистый файл, но и чтобы ухватить все то, что потом может экспортироваться с ошибками. И снова, лучше найти ошибку сейчас, чем тогда, когда вы уже закончите работу с проектом и отправите его в другую студию, или когда вы попытаетесь отправить персонаж в Motionbuilder $$ Продвинутый анимационный пакет от компании Alias. Узнать подробнее вы сможете заглянув в Интернет по адресу: http://www.autodesk.com/ - прим ред. $$, чтобы воспользоваться технологией motion capture.

Врезка. Этот процесс очистки точно так же работает в 3DSMax. Плагин .FBX совмещается со всеми новыми версиями Max. В Max вам нужно будет совершить все те же шаги. Приведите геометрию вашей модели к окончательному виду используя каркасное или полигональное моделирование, проименуйте объекты, убедитесь, что все трансформации сброшены, и затем экспортируйте модель и импортируйте обратно в чистый файл. Чтобы использовать в Max формат .obj, нужно скачать бесплатные плагины с http://www.habware.at.

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

Следующий важный шаг – группировка геометрии. В самом конце все модели, соединенные вместе, должны быть подчинены узлу группы (group node). Это позволяет вам сохранять ясную картину сцены в окнах редакторов Outliner, и Hypergraph. Потом вы можете разбить иерархию на деформирующиеся и недеформирующиеся группы. Чем чище файл, тем быстрее вы и аниматор сможете найти части, которые нужно подвергнуть скиннингу, риггингу или анимации. Применение групп выделения (selection sets) – другой способ сохранять связь файлов геометрии, не группируя их, если есть ограничение на использование групп из-за особенностей экспорта в игру или других внутренних или внешних особенностей.

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

Подготовка персонажа из книги к риггингу

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

  1. Отобразите в файле все, что было скрыто. Как видите в нашем файле 133 объекта и множество пустых узлов, история многих объектов. Геометрия проименована по умолчанию (рис. 5.9).

  2. Быстрый способ взяться за дело – экспортировать файл как .obj. Это обратит всю иллюзорную геометрию в реальную, лишит объекты истории и быстро покажет вам, нормали каких объектов должны быть переведены из отрицательного масштаба.

  3. Теперь, после импортирования файла .obj, вы получили один объединенный полигональный объект, множество групп всех других частей и черные из-за неправильных нормалей поверхности, приведение которых в порядок – ваш следующий шаг (рис. 5.10).

@Рис. 5.9. Исходный файл

@Рис. 5.10. Очищенный файл с неправильными нормалями.

  1. Чтобы избавиться от групп, выделите их в Outliner и удалите.

  2. Теперь вы можете исправить нормали. Экспортирование в формат .obj имеет побочный эффект: после импорта Maya блокирует все нормали, изначально не допуская воздействия на них, например, реверса.

  3. С помощью инструмента Set Vertex Normal включите опцию Unlock Normals (Разблокировать Нормали) и примените ее. Вы можете быть введены в заблуждение тем, что поверхность теперь выглядит так, как будто все нормали верны. Но Вам все еще нужно перевернуть их. Это происходит из-за того, что объект двусторонний, и если эту опцию отключить, то вы увидите, что части каркаса все еще неверно инвертированы (рис. 5.11 – 5.12). Теперь просто переверните нормали там, где это необходимо. В этой сцене все еще есть объекты, вершины которых нужно соединить или объединить, а затем скомпоновать в меньшие группы, чтобы привести сцену в порядок.

@Рис. 5.11. Разблокировка нормалей инструментом Set Vertex Normal

@Рис. 5.12. Отключение опции двухстороннего отображения модели

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

Работая с игровыми моделями или моделями для кино, всегда проверяйте, чтобы cloth-объекты $$ cloth-объект, это объект относящийся к встроенному в Maya модулю имитации поведения тканей – прим ред. $$или объекты симуляции были разделены. Если cloth-объект вшит в главный каркас, имитация может попытаться обработать всю модель, а не только одежду, в зависимости от Вашего игрового движка. Удерживание cloth-объекта как отдельного объекта так же позволит Вам оптимизировать cloth-объект и сделать ему привязку без воздействия на основной каркас. Игровые экспортеры , в целом, должны позаботиться о комбинировании геометрии при экспорте, чтобы файл оставался сгруппированным и в то же время доступным для художника. Если наложено ограничение, например, необходимость присоединить или скомбинировать всю геометрию в один объект для экспортера, то экспортер должен исправить ошибки, потому что это не должно быть ограничением.

На рисунке (рис. 5.14) показан пример того, как разобраться с геометрией и скомпоновать группы объектов, чтобы упростить их работу и уменьшить число узлов в процессе скиннинга и риггинга.

@Рис. 5.13. Новая чистая группировка частей модели

@Рис. 5.14. Группировка ремня с его заклепками

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

@Рис. 5.15. Группы законченной модели

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

На этом этапе вы также сделаете окончательную проверку и очистку истории файла.

  1. Спросите себя сперва, хорошо ли сделан UV-маппинг текстуры, или его нужно сделать потом? Если верно последнее, то вам придется обновить проскиненную модель новыми текстурами и материалами.

  2. Перепроверьте x-формы объекта и снова их заморозьте.

  3. Удалите всю историю модели. (Проследите, есть ли уже в файле цели морфинга, потому что вы можете удалить их, сами того не заметив.)

  4. Проверьте редакторы Multilister или HyperShade и, если нужно, разберитесь с шейдерами. Имеется в виду, что они могут быть некорректно названы, или в Maya 6 можно создавать организационные корзины (organizational bins) прямо в окне редактора Hypershade как дополнительный способ их группировки. Создайте одну такую корзину специально для этого персонажа и убедитесь, что узлы названы так, чтобы обозначить их принадлежность персонажу. Подойдут первые два инициала имени персонажа. В нашем случае это PigGoblin, так что шейдеры будут называться pg_НазваниеШейдера и размещаться внутри pg_Bin (рис. 5.16).

@Рис. 5.16. Новая корзина применяется для приведения в порядок базовых шейдеров персонажа

  1. Дополнительный организационный совет – применять новые возможности Maya 6 для выделения узлов цветом в редакторе Hypergraph. Это упрощает систематизацию и организацию файла на уровне узлов, при рассмотрении комплексного отображения сцены. Цель – получить очищенный Outliner и очищенный Hypergraph. Вы можете сделать это вместо использования слоев для объектов, если вы хотите ограничить число слоев в файле. Вы можете свободно брать такие цвета, какие захотите, хотя мы обычно придерживаемся голубого цвета для самой модели и гораздо больше используем эту возможность позднее, при управлении объектами (рис. 5.17).

@Рис. 5.17. Цветные узлы помогают разобраться со сложным устройством в HyperGraph

Врезка. Из файла справки Alias…

«В редакторе Attribute Editor этого узла перейдите в раздел Drawing Overrides (настройки отображения). (Вам придется раскрыть вкладку Object Display, чтобы увидеть этот раздел.) Включите Enable Overrides и установите цвет с помощью цветового ползунка. Опция Node Display Override Color (Заменить Цвет Отображения Узла) в окне Hypergraph должна быть включена, чтобы отобразить изменения цвета. Изменение цвета слоя заменяет настройки отображения этого узла.»

Так как мы хотим применить этот цвет для множества объектов сразу, воспользуемся небольшим скриптом:

proc drawColor (int $colorID){

string $sel[] = `ls –sl`;

for ($obj in $sel) {

setAttr ($obj + “.overrideEnabled”) 1;

setAttr ($obj + “.overrideColor”) $colorID;

}

}

  1. Переупорядочите Outliner так, чтобы порядок объектов в окне Outliner’a был таким же, в каком появляются объекты на персонаже сверху вниз или просто в логическом порядке сортировки.

  2. Также добавьте в файл Установку Быстрого Выделения (Quick Selection Set). В том случае, если Вам понадобится слить файл с другими, установка выделения останется в файле, независимо от слоев.

  3. Наконец, последняя проверка качества модели выполняется с помощью некоторых инструментов настройки поверхности, которые не допустят возможность риггинга в файле с какими-либо дефектами в геометрии. Примените инструмент Очистка Полигона (Poligon Cleanup), установите его на Выделенную Геометрию, предварительно включив в настройках инструмента Ребра с нулевой длиной (Edges with zero length), Грани с нулевой областью геометрии (Faces with zero geometry area), Тонкие Грани (Lamina Faces). Если после запуска этого инструмента вы нашли что-то, что моделер пропустил, то по возможности отправьте модель обратно художнику, написав для него список исправлений, или, если это входит в ваши обязанности, исправьте недочёты самостоятельно (рис. 5.18).

@Рис. 5.18. Окончательная модель персонажа после всех проверок и очисток

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