Как создают лицевую анимацию в играх

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

Задача очевидная и даже первостепенная, однако целей её достижения множество. В этой статье я опишу 2 самых популярных технических метода изменения, а после поведаю о нескольких способах переноса эмоций с лица индивида не виртуального на модель.

Технический фундамент

Blend Shapes для простых эмоций
Метод ключевых форм, а точнее позиций вершин модели, заключается в указании отличной от изначальной геометрии, определенной её области. Проще говоря, есть рот обычный, а есть рот открытый, два этих состояния имеют разную геометрию модели и шейп запоминает последнюю.

Промежуточные значения генерируются автоматически, посредством математической интерполяции. Что это такое? Уложусь в пару строк. Предположим есть условная группа вершин, челюсть например, и, увидев эту статью, он отвисает на 100 условных единиц, пусть будут миллиметры. Влияение шейпа на геометрию измеряется от 0 до 1, вплоть до сотых, получается где-то на 0.65, челюсть будет свисать на 65 миллиметров.

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

Скелетная анимация для поговорить

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

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

Как правило, если иерархия "скелета" лица имеет какой-то стандарт в рамках проекта, то применять её можно на любую модель, что полезно для больших проектов с кучей персонажей и возможностью создать своего.

Захват движений и прочая магия

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

Motion Tracker

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

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

Как вы уже догадались, в софте для анимации подобные магии тоже имеют место быть. Каждая косточка модели начинает двигаться вслед за трекером и так получается анимация. Единственный минус наверно в том, что координаты трекеров меняются лишь по двум осям, так например он не сможет распознать выдвинутую челюсть, изменившую свое положение по неостлеживаемой оси z (глубина).

MotionScan

Приведу самый совершенный на сегодня пример: L.A. Noire. Игра имеет поразительно реалистичные анимации лица, основанные на сканировании лиц актеров.

Вокруг оных располагаются 32 камеры высокого разрешения, каждая охватывает область в 12.5 градусов. Методом динамичного 3D сканирования, софт генерирует высоко детализированную модель и изменения её геометрии. После свершается ретопология - упрощение геометрической сетки, дабы мощностей устройств обывателей хватило чтобы поиграть.

Колхозный MotionScan

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

Работает не точно, но работает. Для начала так же определяется лицо индивида с веб-камеры, после оно делится на зоны : рот, глаза и т.д. Технически софт делает то же, что и motion tracker, только для его работы не надо себя разукрашивать.

Эмоции можно перенести на любую модель, лишь бы движок понимал где какие части лица у вас и у неё.

6
5
Комментарии:  5
Ваш комментарий

Каждый раз когда я вижу рожу которая на привьюшке мне сразу вспоминается эта гифка.

saa0891 Райдер так-то сама по себе красивая девушка. Но вот лицевая анимация там дно, в Андромеде.

Your Hair is Beautiful Единственная красивая девушка в Андромеде это Суви и то эти марозматики из биовар сделали её лесбиянкой. Ну может ещё Кора,хотя тут уж у кого какой вкус.

saa0891 Тоже смотришь лирика?)

Автор, видно, в теме, но со стилистикой языка и изложением все просто ужасно.

и мимики лица.

А какая-то еще есть?

Задача очевидная и даже первостепенная, однако целей её достижения множество.

Целей достижения задачи?

В теории метод менее гибок для извращений, но более гибок для движка

What the fuck is this?

способами анимации, но для получения реалистичной и приятной анимации требуется титанический труд аниматора

Анимации реанимации аниматора.