Создание кат-сцен на движке игр (Cinematics)
Кат-сцена, сделанная в движке, — это не просто «дешевле, чем prerendered». Это живой контент: персонажи в кат-сцене используют те же шейдеры и освещение, что и в геймплее, реагируют на оборудование игрока, одеты в то, что игрок надел. Prerendered-ролик не может этого. Мы в своей практике разрабатываем in-engine кат-сцены, которые решают эту задачу: бесшовно интегрируются в геймплей и не ломают иммерсию. Но in-engine cinematics требует отдельного пайплайна — случайное «запустим Timeline и поснимаем» дает трясущиеся камеры, деревянные анимации и разрывы между геймплеем и кат-сценой.
Как работает Timeline в кат-сценах?
В Unity центр cinematics — Timeline. Это секвенсор с треками: Animation Track для персонажей, Cinemachine Track для камер, Audio Track для музыки и озвучки, Signal Track для ивентов (запустить эффект, сменить состояние геймплея), Activation Track для включения/выключения объектов.
Каждый персонаж в кат-сцене получает Animation Track с ключами анимаций. Важный момент: анимации в Timeline работают в режиме Apply Root Motion или через Override Transform — выбор влияет на то, двигается ли персонаж в мировом пространстве или остаётся на месте. Смешение режимов в одной кат-сцене — источник «прыжков» персонажей в момент выхода из Timeline обратно в Animator.
Почему Cinemachine критически важен?
Cinemachine предоставляет набор виртуальных камер для каждого ракурса. Переходы между камерами через CinemachineBrain на Main Camera с настройкой Default Blend или индивидуальными CinemachineBlend между парами камер. Cut vs Ease In/Out vs Custom Curve — выбор типа перехода зависит от эмоционального ритма сцены: резкий cut для экшн-момента, smooth ease для emotional reveal.
Типичная ошибка: все камеры в Cinemachine Track имеют одинаковый приоритет, и при переключении между виртуальными камерами происходит случайное смешение. Правильно: активная камера в момент проигрывания Timeline контролируется через Cinemachine Track, остальные виртуальные камеры имеют Priority = 0 и не влияют на CinemachineBrain. Согласно официальной документации Cinemachine, такой подход гарантирует корректный приоритет камер.
Как добиться бесшовного перехода между геймплеем и кат-сценой?
Самое сложное в in-engine cinematics — не сделать красивую сцену, а сделать бесшовный переход из геймплея в кат-сцену и обратно.
При входе в кат-сцену: отключение управления игрока (Input System — disable action map), фриз геймплейного Animator (не StopPlayback — а установка speed = 0 или отключение Component), передача контроля камеры в Cinemachine Track. При выходе: обратный порядок. Если персонаж в конце кат-сцены стоит в позиции, отличной от начала, нужен плавный blend обратно через Animator.
На одном проекте с boss-intro кат-сценой позиция игрока в конце Timeline отличалась от позиции в геймплее на 2 юнита — при выходе игрок «телепортировался». Решение: финальный кадр Timeline закрывался экраном загрузки на 0.5 секунды с одновременным repositioning персонажа. Нехитро, но незаметно.
Subtitles и диалоги. Синхронизация субтитров с аудиодорожкой — через Signal Track с custom SignalReceiver, который показывает/скрывает субтитры по временным меткам. Альтернатива: Yarn Spinner или Ink integration с TimeLine — для игр с разветвлёнными диалогами внутри кат-сцен.
Оптимизация in-engine кат-сцен
Timeline не бесплатен по производительности. На мобильных платформах 5+ персонажей с Skinned Mesh Renderer, анимируемых одновременно, + сложное освещение — просадка до 20–30 fps.
Подходы к оптимизации:
- LOD во время кат-сцены — принудительное переключение на LOD0 для главных персонажей, LOD1 для фоновых
- Occlusion Culling — включить в настройках камеры Timeline
- Pre-bake освещения — для кат-сцены с фиксированным положением источников света использовать Baked Lighting вместо Real-time
- Recordable — для платформ с жёсткими ограничениями (Nintendo Switch) рассматривать prerendered + маскировку перехода через loading screen
| Ошибка |
Последствие |
Решение |
| Одинаковый приоритет камер Cinemachine |
Случайное смешение камер |
Активная камера через Cinemachine Track, остальные Priority=0 |
| Root Motion в Timeline без учёта начальной позиции |
Телепортация персонажа при выходе |
Использовать Override Transform или экран загрузки |
| Отсутствие LOD во время кат-сцены |
Просадка FPS на мобильных |
Принудительно переключить LOD для главных персонажей |
Этапы производства кат-сцены
- Раскадровка — последовательность ракурсов, хронометраж, ключевые моменты. До открытия Unity.
- Layout — расстановка объектов, грубые камеры в Cinemachine, хронометраж в Timeline без финальных анимаций.
- Animation pass — анимации персонажей в Animation Track, Motion Capture данные или keyframe вручную.
- Camera polish — финальные ракурсы, lens settings в Cinemachine (Field of View, Dutch angle, noise profiles для handheld-камеры).
- Sound + VFX — аудио в Audio Track, VFX через Activation Track.
- Polish — Post-processing, colour grading через Volume в кат-сцене.
- Переходы — отладка входа/выхода в геймплей.
Детали пайплайна кат-сцены
Каждый этап требует экспертизы в анимации, звукорежиссуре и оптимизации. Мы используем Agile-методологию для быстрой итерации и минимизации правок.
Что входит в работу
- Раскадровка и сценарий с хронометражем
- Настройка Timeline и Cinemachine (все камеры, переходы, сигналы)
- Анимация персонажей (keyframe или mocap с очисткой)
- Интеграция диалогов и субтитров
- Оптимизация под целевую платформу (LOD, culling, baked lighting)
- Тестирование бесшовности переходов на реальном геймплее
- Документация по интеграции и поддержка при внедрении
Наша команда имеет 5+ лет опыта в разработке кат-сцен, реализовала более 70 проектов для мобильных и PC платформ. Гарантируем соблюдение сроков и бюджета.
| Масштаб |
Срок |
| Короткая кат-сцена (15–30 сек, 2–3 камеры) |
3–7 дней |
| Драматическая сцена (1–2 минуты, диалог, VFX) |
2–4 недели |
| Финальная/вступительная кат-сцена ААА-качества |
4–8 недель |
Стоимость определяется хронометражем, сложностью анимаций и количеством персонажей в сцене. В среднем заказчик экономит до 40% бюджета, выбирая in-engine вместо prerendered. Получите предварительную оценку вашего проекта — свяжитесь с нами.
Синематика и видео для игр
Катсцена, которая в редакторе выглядит отлично, в продакшен-сборке может превратиться в слайд-шоу: персонажи застывают, камера дёргается, освещение не совпадает с геймплеем. Мы сталкивались с этим десятки раз на проектах под PC и мобильные платформы. Нормальный pipeline для создания игровых кинематиков строится с самого начала, а не на финальной неделе. Ниже — как мы выстраиваем этот процесс.
Что входит в услугу
- Сторибординг и превиз — аниматик с таймингом, раскадровка, согласование с нарративом до начала производства
- In-engine синематика — Timeline, Cinemachine (Unity), Sequencer (Unreal)
- Рендеренные катсцены — pre-rendered video с интеграцией в движок
- Процедурная генерация окружения и анимации — для проектов с контентом большого объёма
- Технический арт для синематики — rig для камер, кастомные треки Timeline
Почему in-engine катсцены выгоднее pre-rendered?
In-engine катсцены используют актуальные ассеты, реагируют на состояние игрока (кастомизация персонажа, динамическое освещение) и не требуют отдельного хранения видеофайлов. За это приходится платить сложностью production-pipeline. Но для 70% современных проектов этот путь оправдан: экономия места на диске (до 90% для многокатсценных игр) и возможность адаптации под разные разрешения без перерендера.
Архитектура Timeline
Timeline в Unity — это не просто инструмент анимации, а полноценная система управления временем для любых игровых объектов. Каждый PlayableDirector управляет TimelineAsset, который содержит треки:
| Тип трека |
Назначение |
AnimationTrack |
Анимации персонажей и объектов |
CinemachineTrack |
Переключение виртуальных камер |
AudioTrack |
Музыка, озвучка, SFX |
ActivationTrack |
Включение/выключение объектов |
ControlTrack |
Запуск дочерних Timeline, Particle Systems |
SignalTrack |
Вызов событий в коде |
Кастомные треки через PlayableBehaviour + PlayableAsset — ключевая возможность для сложных катсцен. Например, трек для управления post-processing overrides, плавного blend DOF, или синхронизации субтитров с аудиодорожкой. Мы за годы реализовали более 20 кастомных треков под конкретные задачи.
Cinemachine: виртуальные камеры
Cinemachine меняет подход к работе с камерой принципиально. Вместо одной камеры с ключевыми кадрами — система виртуальных камер (CinemachineVirtualCamera, CinemachineFreeLook, CinemachineStateDrivenCamera), между которыми главная камера плавно переключается по правилам blend.
Для синематики наиболее интересны:
- CinemachineVirtualCamera — основной инструмент. Каждая виртуальная камера имеет свою Body (как камера следует за целью) и Aim (как камера смотрит на цель). Комбинации:
- Transposer + Composer: камера следует за персонажем, сохраняя его в кадре
- OrbitalTransposer + POV: камера игрока от третьего лица
- DoNothing + DoNothing: полностью статичная камера, управляется ключевыми кадрами
- Dolly Track (
CinemachinePathBase + CinemachineTrackedDolly) — камера движется по сплайну. Дизайнер задаёт путь в сцене, аниматор контролирует позицию на пути через Timeline.
- Camera Blend в
CinemachineBrain: переход между виртуальными камерами может быть Cut, Ease In/Out, Linear или через custom AnimationCurve. Для диалоговых сцен стандарт — Cut между репликами, Ease для эмоциональных переходов.
Проблемы и решения
Jitter при следовании за персонажем — распространённая проблема, когда частота обновления физики (FixedUpdate) не совпадает с рендером. Решение: CinemachineVirtualCamera > Body > Binding Mode: World Space + включить Stabilize Roll. Если недостаточно — кастомный CinemachineExtension с дополнительным сглаживанием позиции. Проверено на проектах с частотой кадров 30-60 FPS.
Несоответствие освещения между геймплеем и катсценой — возникает при переключении между сценами Unity или при использовании разных Lighting Settings. В URP/HDRP решается через Volume Profile Override на CinemachineVirtualCamera или через Timeline ControlTrack для активации нужного Volume.
Lip sync — для диалоговых сцен с озвучкой используем Salsa LipSync (Unity) или нативный Audio2Face (Unreal + MetaHuman). Базовый уровень — viseme-driven анимация через AnimationTrack с ключевыми кадрами под каждую реплику.
Как Sequencer в Unreal Engine упрощает рабочий процесс?
Unreal's Sequencer — функциональный аналог Timeline, но с рядом отличий. Для синематики кинематографического уровня Sequencer удобнее:
- Movie Render Queue вместо Play Mode для финального рендера — даёт path tracing, motion blur с subsampling и консистентный результат кадр-в-кадр
- Level Sequence Actor позволяет вкладывать Subsequences — удобно для больших проектов, где над разными частями катсцены работают параллельно
- Control Rig интеграция: прямое управление FK/IK rig в Sequencer без переключения в Animation Blueprint
Для MetaHuman персонажей Sequencer — основной инструмент: анимации лица через Face AR или Performance Capture пишутся прямо в Sequencer-трек.
Pre-rendered видео: когда и зачем
Pre-rendered катсцены оправданы для интро/аутро, где качество важнее интерактивности. Рендерим через Unity Recorder или Movie Render Queue (Unreal), финальный монтаж и цветокоррекция — в DaVinci Resolve.
Интеграция в движок: .mp4/.webm через VideoPlayer (Unity) или Media Framework (Unreal). Важный момент для мобильных платформ — видео не всегда декодируется аппаратно на всех целевых устройствах; заранее проверяем поддержку кодека (H.264 — безопасный выбор, H.265 — лучшее качество, но не все Android поддерживают).
Процесс работы над катсценой
Для каждого проекта мы проходим этапы:
| Этап |
Длительность (дней) |
Результат |
| Сценарий + раскадровка |
2–5 |
Утверждённый script, storyboard |
| Превизуализация (animatic) |
3–7 |
Черновик с таймингом |
| Сборка in-engine |
5–15 |
Готовая катсцена в движке |
| Кастомные треки + технический арт |
2–5 |
Решение специфических задач |
| Тестирование и оптимизация |
1–3 |
Плавность 30+ FPS на целевых устройствах |
| Финальный рендер и интеграция |
1–2 |
Pre-rendered video или билд |
Сроки ориентировочные и зависят от сложности сцены (количество персонажей, длина, платформа). Стоимость рассчитывается индивидуально — оценим ваш проект бесплатно при обращении.
Процедурная генерация: Wave Function Collapse для ассетов и анимации
Для проектов с большим количеством контента (roguelike, open world) ручное создание каждого уровня нецелесообразно. Wave Function Collapse (WFC) — алгоритм тайловой генерации, основанный на принципе энтропии (название метафорическое, алгоритм детерминированный). Суть: каждая ячейка сетки может быть одним из N тайлов; алгоритм итеративно «коллапсирует» ячейки, выбирая тайл по правилам совместимости с соседями.
Практическое применение в Unity: библиотека mxgmn/WaveFunctionCollapse или кастомная реализация под конкретную игру. Правила совместимости задаются либо вручную (JSON с описанием, какие тайлы могут соседствовать), либо обучаются на примерных уровнях.
BSP (Binary Space Partitioning) — классический алгоритм для dungeon-уровней. Проще в реализации, но менее гибок в результате. Для roguelike — хороший выбор.
Для синематики процедурная генерация применяется и в другом контексте: процедурная анимация камеры (handheld camera shake, breathing idle) через Cinemachine Noise или кастомные Perlin noise-based контроллеры — добавляет кинематографическую живость без ручного keyframing каждого движения.
Типичные ошибки при создании катсцен
-
Игнорирование производительности: катсцена с 20+ активными виртуальными камерами может съесть весь FPS. Решение — использовать Priority и отключать неактивные камеры.
-
Отсутствие fallback для мобильных платформ: pre-rendered видео должно иметь H.264 fallback, иначе на старых устройствах — чёрный экран.
-
Перегрузка Timeline: треки без organization превращают проект в кашу. Правило — группировать по типу (Animation, Audio, Control) и использовать Sub-Timeline для длинных сцен.
Почему стоит доверить создание кинематиков нам?
За 10+ лет работы в геймдеве мы реализовали кинематики для более чем 50 проектов — от мобильных платформ до PC и консолей. Сертифицированные специалисты Unity (Unity Certified Developer) и Unreal Engine (Unreal Authorized Training Partner). Гарантируем стабильную работу катсцен на всех целевых устройствах.
Свяжитесь с нами для оценки вашего сценария. Закажите разработку кинематика под ключ — от раскадровки до финального билда.
Ссылки: Wikipedia — Computer animation, Wikipedia — Wave function collapse