3D Моделирование персонажей для игр и их скелетная анимация

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

Трехмерная модель опорно-двигательного аппарата человека
Скелет каждого живого существа определяет специфику его двигательной активности

Коротко о создании скелетной анимации

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

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

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

Посмотрите, как осуществляется процесс риггинга, на примере руки робота

Что нужно знать при работе со скелетом персонажа

Избежать лишних сложностей можно, если с самого начала опираться на некоторые важные принципы. Первый из  них — это вполне логичная взаимосвязь: чем больше костей вы разместите внутри модели, тем больше возможностей для движения у нее будет. От этого также будет зависеть стоимость 3d визуализации. Для большинства гуманоидных фигур используется упрощенная модель человеческого скелета — но не настолько упрощенная, чтобы, к примеру, избавиться от необходимости иметь много костей в позвоночнике, так как если сделать его цельным, персонаж не сможет даже согнуть спину.

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

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

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