Риггинг и анимация персонажей мобильной игры

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Риггинг и анимация персонажей мобильной игры
Средний
от 1 недели до 3 месяцев
Часто задаваемые вопросы

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

Этапы разработки

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

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Риггинг и анимация персонажей мобильной игры

Художник сдал финальный арт персонажа. Слои в PSD аккуратно разбиты: торс, голова, левая рука, правая рука, ноги. Открываешь Spine 2D — и начинается настоящая работа: правильно расставить иерархию костей так, чтобы при blend между run и attack не вывернуло плечо наизнанку, а mesh деформация на одежде не давала артефактов на граничных пикселях.

Иерархия костей и типичные ошибки

Новички в риггинге делают плоскую иерархию: все кости от root. Результат — при повороте бедра нога не тянется, приходится анимировать каждую кость отдельно. Правильная цепочка: root → pelvis → spine → chest → shoulder_l → arm_l → forearm_l → hand_l. Тогда поворот chest тянет всё выше, и аниматор управляет позой через несколько ключевых костей, а не двадцать.

Weights painting — место, где теряется неделя. Для мобильных персонажей используем максимум 2–3 influences на вертекс (в Spine это Max Bones Per Vertex в настройках mesh). Больше — GPU skinning на мобиле начинает просаживаться. На Mali-G57 разница между 2 и 4 influences при 10 персонажах на экране — около 3 мс на кадр. Немного, но при 30 FPS бюджет — 33 мс, и их мало.

IK против FK — принципиальный выбор для каждой конечности. Ноги персонажа, который ходит по ровной поверхности, — FK, проще и предсказуемее. Ноги персонажа, который адаптируется к неровному рельефу — IK через IK Constraint в Spine с Bend Direction по ситуации. Руки в атаке — FK (нужен контроль дуги). Рука, которая держится за поверхность — IK.

Как работаем в Spine 2D

Spine 4.x — основной инструмент для сложных персонажей. Workflow:

Разбиваем PSD в отдельные PNG через Photoshop скрипт или Aseprite, складываем в папку. В Spine создаём skeleton, импортируем изображения как slots. Расставляем кости строго по иерархии, начиная с root в центре масс персонажа.

Mesh создаём только там, где нужна деформация: одежда, волосы, плащи. Жёсткие элементы (меч, щит, металлические детали) — без mesh, просто attachment. Меньше вертексов в mesh — меньше работы GPU.

AnimationState в Spine Runtime позволяет микшировать анимации через tracks: track 0 — базовая анимация тела (idle/run/jump), track 1 — анимация рук (attack/block/reload). Mix Duration 0.15–0.2 секунды для плавного перехода без попинга.

PathConstraint — отличная вещь для хвостов, верёвок, кос. Создаём путь (path attachment) по нужной кривой, привязываем кости к нему. Анимировать нужно только точки пути, а не каждую кость. На 10–12 костях хвоста экономит значительное время.

Оптимизация атласа и runtime

После финализации анимаций упаковываем текстуры через Spine's Atlas Packager. Правила:

  • Максимальный размер атласа — 2048×2048, лучше 1024×1024 для mid-range
  • Bleed включён — убирает артефакты на границах спрайтов
  • Формат: PNG → конвертим в ASTC/ETC2 при импорте в Unity

В Unity используем SkeletonAnimation компонент из Spine Unity Runtime. AnimationState.SetAnimation для смены анимации, AddAnimation для очереди. UpdateTiming = InUpdate — стандарт, не меняем без причины.

Пул объектов обязателен: не создаём Instantiate врагов каждый раз, переиспользуем через SkeletonAnimation.ClearState() + Initialize(true) при возврате в пул.

Unity 2D Animation как альтернатива

Для простых персонажей с 5–8 костями — Unity 2D Animation Package (com.unity.2d.animation) достаточно. PSD Importer читает Photoshop файл напрямую, слои становятся спрайтами, Sprite Skin добавляет деформацию.

Анимируем через стандартный Unity Animator. Blend Tree для run/walk/sprint по скорости. Animation Rigging package — если нужен runtime IK для ног.

Плюс подхода: нет внешнего runtime, меньше зависимостей, стандартные Unity tools. Минус: mesh deformation слабее, чем в Spine, и нет такого мощного смешивания через tracks.

Этапы и сроки

Работа начинается с технического задания: список состояний каждого персонажа, требования к IK, целевые устройства, ограничения по draw calls. Без этого ТЗ → риггинг → review с геймдизайнером → анимация базовых состояний → интеграция в движок → профилирование → финальная полировка.

Простой персонаж (10 костей, 5–7 анимаций): от недели. Сложный hero-unit с 20+ анимациями, IK, attachment swapping и полным набором VFX: до трёх месяцев. Стоимость рассчитывается индивидуально после анализа списка персонажей и требований к анимационному дереву.