Разработка скелетного рига персонажей игр

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

От иммерсивных приложений до игровых миров и 3D-сцен

Наша выделенная команда для VR/AR/MR-разработки, Unity-продакшна и 3D-моделирования и анимации с собственными кейсами и презентациями.

Посетить персонализированный сайт
Показано 1 из 1 услугВсе 242 услуг
Разработка скелетного рига персонажей игр
Сложная
~5 рабочих дней
Часто задаваемые вопросы

Наши компетенции

Какие этапы разработки игры?

Последние работы

  • image_games_mortal_motors_495_0.webp
    Разработка игры для компании Mortal Motors
    683
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    Пошаговая стратегия в фэнтези сеттинге With Fire And Sword
    862
  • image_games_second_team_604_0.webp
    Разработка игры для компании Second term
    491
  • image_games_phoenix_ii_606_0.webp
    3D-анимация — тизер для игры phoenix 2.
    533

Разработка скелетного рига персонажей игр

Риг персонажа в игровом контексте — это не та же задача, что риг для кино или рекламы. Здесь кости должны работать в реальном времени, вписываться в лимиты движка, поддерживать ретаргетинг и не ломаться при импорте через FBX. Художники, пришедшие в геймдев из кино-пайплайна, часто узнают об этом на стадии, когда переделывать поздно.

Что делает риг «игровым»

В кино можно позволить себе 300+ костей на персонажа, деформеры, nCloth и lattice. В реальном времени это нереально. Unity Humanoid Avatar поддерживает обязательный набор из 15 костей (Body, Head, Left/Right Arm, Left/Right Leg) и опциональные пальцы. Generic риг — без ограничений на количество, но и без Humanoid-функций.

Количество костей на платформу:

  • Мобильные устройства (GPU skinning): рекомендация — до 75 костей, hard limit зависит от GPU
  • PC/Console (Compute skinning): 100–150 реалистично без потерь
  • VR: особые требования из-за Frame Budget — не больше 60–80

Каждая кость, добавленная «на всякий случай», — это кость, которую аниматор вынужден учитывать или явно исключать через Avatar Mask. Минимальная достаточность — принцип, который экономит деньги на всех последующих этапах.

Иерархия и соглашения об именовании

Корневая кость — Root (или Hips в Mixamo-конвенции). Всё остальное — дочерние элементы. Важно: Root стоит на полу под персонажем, не в центре масс. Это критично для Root Motion: Unity считывает перемещение из Root-кости, и если Root находится на уровне таза, персонаж будет «лететь» при применении Root Motion.

Стандарт именования, который не будет создавать проблем:

  • Hips, Spine, Spine1, Spine2, Chest, Neck, Head
  • LeftShoulder, LeftUpperArm, LeftLowerArm, LeftHand
  • LeftUpperLeg, LeftLowerLeg, LeftFoot, LeftToe

Это Mixamo-совместимое именование, которое Unity автоматически маппит в Avatar Configuration без ручного указания. Любое отклонение (L_Thigh, Bip001 L Leg, UpperLeg.L) требует ручного маппинга каждый раз при реимпорте.

Ориентация осей и Bind Pose

Ориентация осей костей в Blender (Y вдоль кости) и Maya (X вдоль кости) — разная. Это нужно учитывать при настройке IK-решателей и при экспорте. В Blender кость «смотрит» по Y-оси локального пространства; если Connect не выставлен — ось может быть произвольной, и IK даст непредсказуемый результат.

Проверка: выбрать все кости в Edit Mode, Display → Axes. Все основные оси должны смотреть от родителя к ребёнку по одной оси. Если хаос — Recalculate Roll через Ctrl+N с опцией Global Positive X.

T-Pose для Bind Pose — стандарт для Humanoid Avatar в Unity. A-Pose технически допустима, но при авто-маппинге Unity иногда неверно определяет направление конечностей. Безопаснее: экспортировать в T-Pose, в Unity выставить Reference Pose = T-Pose, потом дополнительный клип с A-Pose для скиннинга.

Вспомогательные кости и Twist

Без Twist-костей вращение предплечья при пронации/супинации деформирует меш по принципу «скрученной трубки». Unity Humanoid поддерживает Upper Arm Twist и Lower Arm Twist как опциональные кости. Добавляются между Shoulder → Forearm и Forearm → Hand.

Weight для Twist-кости: 0.5 на среднем участке сегмента, 0 у обоих концов. Это распределяет деформацию по длине конечности вместо концентрации на одном суставе. В Maya это настраивается через Advanced Twist Controls в IK Handle. В Blender — Bone Constraint → Copy Rotation с Factor 0.5.

Процесс разработки рига

Аудит меша и ТЗ → Сборка иерархии → Ориентация осей → Bind Pose проверка → IK setup → Тест-анимация → Экспорт → Проверка в Unity Avatar Configuration.

Тип персонажа Ориентировочный срок
Humanoid без пальцев (NPC, simple character) от 3 до 6 часов
Полный humanoid с пальцами + Twist bones от 1 до 1.5 дней
Квадрупед или нестандартное существо от 2 до 4 дней
Риг с динамическими элементами (хвост, плащ) от 3 до 5 дней

Финальный результат: FBX с корректным скелетом, готовый к скиннингу и импорту в Unity с зелёным Avatar без предупреждений. Стоимость определяется после ознакомления с мешем и требованиями проекта.