Version: 5.3 (switch to 5.4b)
Использование Гуманоидных Персонажей
Общие Анимации в Mecanim

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

Существует три главных шага по созданию “с нуля” своего анимированного гуманоидного персонажа: моделирование, риггинг и скиннинг.

Моделирование

Это процесс создания своих гуманоидных мешей в одном из инструментов 3D моделирования - 3DSMax, Maya, Blender, и т.д. Хоть это и целая тема для обсуждения сама по себе, существует несколько принципов, которые рекомендуется соблюдать, чтобы ваша модель была совместима с анимацией в Unity проекте.

  • Соблюдайте разумную топологию. Понятие “разумной” структуры вашего меша довольно тонкое, но в целом вам следуем помнить о том, как вершины и треугольники модели будут искажаться при анимации. Неправильная топология приведёт к неприятным искажениям меша при движениях модели. Изучая существующие 3D меши персонажей, можно узнать много нового о том, как правильно размещать топологию и почему.
  • Не забывайте про масштаб вашего меша. Попробуйте импортировать модель и сопоставить её размер с “метрическим кубом” (длина одной стороны стандартного Unity примитива “куб” равна одной условной единице, так что такой примитив можно рассматривать как однометровый куб в большинстве случаев). Проверьте единицы измерения вашего приложения для 3D моделирования и скорректируйте настройки экспорта так, чтобы размер модели был в нужных вам пропорциях к метровому кубу. Если не учитывать это при работе над моделями, легко прийти к ситуации, когда вы создадите несколько разных моделей без учёта масштаба и они окажутся несоразмерны после импорта в Unity.
  • Располагайте меш так, чтобы ступня персонажа находилась в центре вращения модели. Так как обычно персонаж ходит по горизонтальной поверхности, будет намного проще с ним работать, если его центр вращения(то есть, его позиция трансформации) будет на этой поверхности.
  • По возможности, моделируйте в Т-позе. Это даст дополнительное пространство для манёвра при работе над труднодоступными местами (например, подмышками). Кроме того, это упростит размещение рига внутри меша.
  • Держите модель в порядке. Не оставляйте дырок в поверхности, объединяйте вершины и избавляйтесь от скрытых поверхностей, которые никогда не будут видны. Это поможет при скиннинге, особенно если скиннинг автоматизирован.
Skin Mesh, текстурированный и триангулированный
Skin Mesh, текстурированный и триангулированный

Риггинг

Это процесс создания скелета из сочленений для управления движениями вашей модели.

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

Иерархия сочленение/кость должна соответствовать натуральной структуре создаваемого персонажа. Поэтому руки и ноги должны идти в парах и вам следует соответствующе их называть (напр. “arm_L” для левой руки, “arm_R” для правой и т.д.). Возможные структуры иерархии:-

  • Таз - позвоночник - грудная клетка - плечи - рука - предплечье - кисть
  • Таз - позвоночник - грудная клетка - шея - голова
  • Таз - бедро - нога - ступня - палец - конец_пальца
Двуногий скелет в Т-позе
Двуногий скелет в Т-позе

Скиннинг

Это процесс привязки меша к скелету.

Скиннинг включает в себя связывание вершин в вашем меше с костями скелета. Вершина может быть связана с костью напрямую (жёсткая привязка) или с несколькими костями, используя на них смешанные воздействия (мягкая привязка). В разных программах используются разные способы, например, привязывание отдельных вершин и вписывание в меш степени воздействия на каждую кость. Изначальная настройка обычно автоматизирована, к примеру, с помощью поиска ближайшего воздействия, или с помощью “heatmap”. Обычно скиннинг требует изрядного количества работы и тестирования с помощью анимаций, чтобы достичь желаемых результатов деформации скина. Вот несколько основных рекомендаций для этого процесса:

  • Используйте автоматизацию для начальной настройки скиннинга (см. соответствующие руководства для 3DMax, Maya и т.д.).
  • Создавайте простые анимации или импортируйте готовые анимации для своего рига, чтобы проверить скиннинг. Это позволит вам быстро выяснить, хорошо ли выглядит ваш скиннинг во время движения.
  • Постепенно редактируйте и улучшайте свою работу по скиннингу.
  • Используйте не более 4 воздействий при использовании мягкой привязки, т.к. это наибольшее количество, которое может использовать Untiy. Если к части меша будет применено более четырёх воздействий, то как минимум часть информации будет потеряна при проигрывании анимации в Unity.
Интерактивное привязывание скина, один из многих способов скиннинга
Интерактивное привязывание скина, один из многих способов скиннинга
Использование Гуманоидных Персонажей
Общие Анимации в Mecanim