Анимация в компьютерных играх
Анимация (в переводе с лат. "анима" − душа), т.е. оживление, одушевление - искусственное представление движения путём отображения последовательности рисунков или кадров с частотой, при которой обеспечивается целостное зрительное восприятие образов.
Итак, что же такое анимация?
Краткий экскурс в историю
Анимация, как и любой другой вид искусства, имеет свою историю. Впервые принцип инертности зрительного восприятия, лежащий в основе анимации, был продемонстрирован в 1828 году французом Паулем Рогетом. Объектом демонстрации был диск, на одной стороне которого находилось изображение птицы, а на другой − клетки. Во время вращения диска у зрителей создавалась иллюзия птицы в клетке.
Впервые реальный способ создания анимации был применен на практике после изобретения Томом Эдисоном (Thomas A. Edison) фотокамеры и проектора.

Уже в 1906 году Стюардом Блактоном был создан короткий фильм "Забавные выражения веселых лиц" (Humorous Phases of Funny Faces). Автор выполнял на доске рисунок, фотографировал, стирал, а затем вновь рисовал, фотографировал и стирал.
Настоящую революцию в мире анимации произвел Уолт Дисней. В 1923 году он выпускает серию "Алиса в стране мультипликации", в 1928 − звуковой мультфильм "Пароходик Вилли" с героем Микки Маусом, а позже появились утенок Дональд Дак и др.
Пионером русской мультипликации считается художник и оператор Владислав Александрович Старевич, который в 1910-х годах в киноателье А.А. Ханжонкова разработал особую художественную технику и прием для постановки и съёмки объёмной кукольной мультипликации, сохранившуюся в своих основных чертах и по настоящее время. Им были созданы первые в мире объёмно-мультипликационные фильмы.
Виды компьютерной анимации
Ручная анимация
Традиционный тип анимации. Вся анимация создана исключительно аниматорами, т.е. анимация движения, смерти персонажа прописана без учёта иных факторов, например стен, ландшафта. Таким образом, апимация персонажа продолжала проигрываться, даже если его модель во время движения уперлась в стену. Так же после смерти персонажа и проигрывания соответствующей анимации модель персонажа после падения могла проходить сквозь текстуры ландшафта или вовсе висеть в воздухе.
Motion Capture (MoCap)
Motion Capture (англ. "захват движений") - это очень популярая технология анимирования персонажей. Считается, что история MoCap начинается на студии Уолта Диснея в середине 70-х. Аниматоры Диснея перерисовывали своих героев с реальных актёров на плёнке и вставляли в фрагменты мультфильма.
Второй важный шаг в освоении технологии сделало медицинское сообщество в начале 80х, конкретно врачи-кинесиологи, изучающие динамику движения человеческого тела. Профессору Тому Калверту первому пришла мысль, закрепив на тело потенциометры, оцифровать информацию о собственных движениях.
Том Калверт
Первые комплексы Motion Capture были оптическими, и основной принцип работы таких систем не изменился по сей день.

Заключается он в том, что несколько камер, расположенных под разными углами к движению, снимают динамику маркеров-отражателей или светодиодов распределенных по телу движущегося «актёра».

Далее специальное ПО вычисляет координаты каждого маркера в пространстве в определенные моменты времени, соотнося данные с каждой камеры.

Маркеры имеют три степени свободы, а информация о вращении вычисляется из относительной ориентации трёх или более маркеров (например, плечо, локоть и маркеры запястья, дающие угол локтевого сгиба).
Существует два основных вида систем Motion Capture
Безмаркерная технология, не требующая специальных датчиков или специального костюма. Безмаркерная технология основана на технологиях компьютерного зрения и распознавания образов. Актер может сниматься в обычной одежде, что сильно ускоряет подготовку к съемкам и позволяет снимать сложные движения без риска повреждения датчиков или маркеров.
Маркерная система Motion Capture, где используется специальное оборудование. На человека надевается костюм с датчиками, он производит движения, требуемые по сценарию, встаёт в условленные позы, имитирует действия; данные с датчиков фиксируются камерами и поступают в компьютер, где сводятся в единую трёхмерную модель.
К маркерным системам можно отнести:

1) Оптические пассивные. На костюме, входящем в комплект такой системы, прикреплены датчики-маркеры, которые названы пассивными, потому что отражают только посланный на них свет, но сами не светятся.

4) Механические системы напрямую следят за сгибами суставов, для этого на актёра надевается специальный механический MoCap-скелет, который повторяет следом за ним все движения. В компьютер при этом передаются данные об углах сгибов всех суставов.
5) Инерциальные системы для сбора информации о движении используют миниатюрные гироскопы и инерциальные сенсоры, расположенные на теле актёра.
3) Магнитные системы, в которых маркерами являются магниты, а камерами — ресиверы, система высчитывает их позиции по искажениям магнитного потока.
2) Оптические активные названы так потому, что вместо светоотражающих маркеров, которые крепятся к костюму актёра, в них используются светодиоды с интегрированными процессорами и радио-синхронизацией.
Преимущества MoCap:

MoCap экономит человеко-часы на анимацию персонажа – один актёр, работающий в течении дня (и затем технический штат, работающий несколько дней, чтобы очистить mocap данные) может создать столько анимации, что традиционным аниматорам пришлось бы потратить месяцы.

MoCap может захватывать «вторичные» движения, которые классические аниматоры могут и не воспроизвести за неимением времени или навыка. Также может точно захватить сложное физическое движение вроде реакции на удар кулаком или вращение нунчаков.

Процесс съемок интерактивен и позволяет корректировать процесс на нужном этапе.



Недостатки:

MoCap требует специальных программ и времени, чтобы чистить шумовые эффекты захваченных и обработанных данных. Если ошибок много, иногда легче бросить их и повторно снимать сцену.

Другой важный момент – тогда как человеческие движения MoCap воспроизводит легко, с любым актером нечеловеческого происхождения возникнут проблемы. Его применение к животным вроде лошадей или собак очень затруднительно.

Цена. Оборудование захвата движений стоит десятки и сотни тысяч долларов, а также высокая оплата работы штата.

Помимо вышеперечисленных недостатков есть ещё один: MoCap не позволяет в полной мере взаимодействовать с окружающим миром. И в таком случае на подмогу приходит процедурная анимация.
Процедурная анимация
Процедурная анимация — вид компьютерной анимации, который автоматически генерирует анимацию в режиме реального времени согласно установленным правилам, законам и ограничениям.

Процедурная анимация используется для создания и моделирования системы частиц (дым, огонь, вода), ткани и одежды, динамики твёрдых тел, динамики волос и меха, а также для анимации гуманоидных и негуманоидных персонажей. В компьютерных играх процедурная анимация часто используется для таких простых вещей, как поворачивание головы персонажа, когда игрок озирается по сторонам.
Также к процедурной анимации относится Ragdoll-физика.

Один из простейших, но эффективных способов создания процедурных анимаций — применение физики тряпичной куклы (ragdoll).

Идея заключается в создании гуманоидного тела и соединения всех его звеньев сочленениями (joints) для воссоздания степеней свободы, демонстрируемых реальным прототипом.

Просто используя физику твёрдых тел и ограничения сочленений, можно симулировать падение тела человека. Это не только позволяет сэкономить деньги на «анимацию смерти». Также это позволяет создавать персонажей, реалистично падающих и взаимодействующих с окружениями.
Важнейший недостаток рэгдоллов — их огромная непредсказуемость, которая часто приводит к очень забавным поведениям.
Стопроцентную же процедурную анимацию в данный момент можно наблюдать в нескольких играх Rockstar Games, например в Max Payne 3, GTA 5 и Red Dead Redemption 2.
Процедурная анимация это, конечно хорошо, но всё же, если в меру, например, создание анимации вставания на камень. А если требуется, к примеру, задрать ногу для того, чтобы перелезть через бревно, то тут сразу же видна некая неестественность движения. Потому что нога хоть и задрана, а вот остальное тело на это никак не реагирует.

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

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

Из-за всех этих проблем у разработчиков появилась другая идея: если MOCAP слишком примитивен, а процедурная анимация слишком искусственная, то можно их объединить, чтобы получилась золотая середина. И действительно, получилось неплохо, такими гибридными системами пользуются многие ААА студии.
Движения, записанные с помощью MOCAP, процедурно смешиваются между собой, перетекают одно в другое и при необходимости туда ещё добавляется и чисто процедурная анимация.

Получается гибко, потому что персонаж может поставить ногу на камень или правильно наклонить тело, если идёт под уклоном, а также реалистично, потому что в основе анимации – движения живого актёра.

Но и у этого метода есть свои недостатки: слишком сложная и дорогая реализация, много ручной работы и т.д. Поэтому анимации получаются красивыми, но их, в конце концов, слишком мало.
Пример совмещения MoCap и процедурной анимации. Сначала проигрывается анимация бега, а затем, в момент смерти, она перетекает в процедурную.
Motion Matching
MoMatching – это по сути последний писк моды среди игровых разработчиков.

Одними из первых, кто применил данную технологию были Ubisoft в своей игре For Honor. Суть MoMatching проста: на актёра навешивают датчики, выпускают на площадку и там он минут 20 бегает, прыгает, ползает, по ходит по лестницам, в общем, делает всё, что будет делать игровой персонаж.

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

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

Ответ – нет. Даже и у такой системы свои недостатки: MoMatching плохо подходит для динамичных игр. Он для них просто напросто слишком реалистичен, а реалистичность – это, в свою очередь, медленность. Поэтому для относительно неторопливых игр, например, для The Last Of Us и ей подобным, это отличное решение.

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

На сегодняшний день, объем данных, с которым может работать эта система всего 10-20 минут движения актёра. За это время отрабатывается множество моментов, в котором может оказаться персонаж, но далеко не все.
По причине вышеперечисленных проблем, уже сейчас создаются технологии, которые могут помочь Motion Matching, либо даже заменить его.
The Last of Us 2
The Last of Us 2
Фазово-функционирующая нейронная сеть (или режимно-адаптирующаяся нейронная сеть)
Собственоо, это одна из таких новых технологий. В силу её новизны, точного названия пока нет.

Суть её такова: также, как и в Motion Matching, берётся актёр, на него навешивают датчики, выводят на площадку и он там делает различные движения. Вот только делает он это не 10-20 минут, а десятки часов.

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

Но всё же такие системы дают довольно неплохой результат: даже с отсутствием ручной работы, анимация выглядит невероятно реалистично. За счёт огромного объема обработанной информации, количество анимаций выходит довольно многочисленным. При этом система очень "лёгкая" – она не требует ни мощного процессора, ни объемной оперативной памяти и занимает считанные мегабайты.

И всё же, эта технология довольно молода и потому в играх она пока не появилась. Поэтому, если слова разработчков относительно этой технологии верны, то это будет чуть ли не революция в игровой анимации. Она будет лучше того же Motion Matching, просто за счёт её малой цены.
Но и всё же, и у Motion Matching, и у нейронных сетей есть один явный недостаток: все они завязаны на движениях актёров.

И вследствие этого нельзя оживить каких-либо негуманоидных созданий. Но здесь на выручку приходит всё та же процедурная анимация, которая как раз и позволяет оживить различных, нечеловекоподобных созданий.
Ничего в мире нет идеального. Так же и здесь. У каждой выше перечисленной системы есть свои достоинства и недостатки, поэтому единого и идеального решения пока нет. Каждая система хороша по-своему и поэтому не стоит забывать, что правильное совмещение этх технологий может дать впечатляющие результаты.
Created and designed by Dmitry Petukhov, Ivan Kotzin and Alexander Ostrouh
of UMR22 group.
This site was made on Tilda — a website builder that helps to create a website without any code
Create a website