Анимация в GTA 4, которую так никто и не превзошёл.
Как бы ни развивались графика и геймплей видеоигр, анимация NPC, судя по всему, находится в некоторой стагнации. Портал Eurogamer связался с разработчиками системы динамической анимации Euphoria, чтобы узнать, как она работала и почему её так редко используют.
DTF публикует перевод материала.
Отследить путь развития видеоигр за последние несколько десятков лет легко. Вы наверняка видели картинку, на которой Лара Крофт эры первой PlayStation во всей её угловатой полигональной красоте поставлена рядом с современной моделью. А если нет, то, возможно, сталкивались с изображением Би Джея Бласковица из Wolfenstein: The New Order рядом с его грубо нарисованной первой инкарнацией. Как много пикселей, какая детализация, как же сильно изменились игры.
И всё же, хотя гонка визуальных вооружений кончаться не собирается, физика персонажей пребывает в стагнации. У вас, может, и есть возможность разрушать сложные структуры в Red Faction: Guerilla, а Microsoft обещает просчитываемые в облаке полностью разрушаемые небоскребы в мультиплеере следующей Crackdown, но модельки персонажей до сих пор нелепо плюхаются на пол, зависают над землей, проваливаются через текстуры или нелепо двигаются, демонстрируя однообразные анимации. Но в Grand Theft Auto 4 всё было иначе.
Уничтожение всего и вся в Либерти-сити с помощью гранатомета это такая банальщина. Величайшие преступления Grand Theft Auto 4 случаются, когда игрок выпускает внутреннего Агента 47 и толкает прохожих навстречу их смерти: с мостов, на рельсы, с лестниц. В зависимости от того, что тебе больше по вкусу, чудовищный ты садист.
Rockstar прекрасно понимали, что они делают, когда дали игрокам возможность толкать NPC, привязав это действие к отдельной клавише. В первом Assassin’s Creed я использовал анимацию «мягкого толчка», чтобы отправлять гуляющих по местным улочкам роботяг в воду, где они неминуемо тонули: но сразу было понятно, что анимация эта задумана для другого. А вот когда в GTA 4 NPC после толчка валится с лестницы, разбиваясь насмерть, вы знаете, что именно так разработчики и планировали. И никакой вины.
Когда в 2008 году игра про преступления в открытом мире вышла, то ощущалась как новое слово в индустрии. Персонажи, анимированные с помощью системы Euphoria в синергии с собственным движком Rockstar — RAGE, реагировали на ситуации динамически: хватались за пулевые ранения, падали с лестниц, перепив, пошатывались, бились об объекты и реагировали на окружение. Это было своего рода откровение, но, помимо нескольких редких примеров вроде Backbreaker и Star Wars: The Force Unleashed, вне игр Rockstar оно наблюдается редко.
Гарри Дэнхольм (Harry Denholm) работал над GTA 4, на посту ведущего инженера в NaturalMotion, компании, создавшей Euphoria. Дэнхольм «пересобрал» прошлую попытку студии в этой сфере — старую технологию Endorphin, чтобы она работала в реальном времени. Затем его команда тесно сотрудничала с игровыми студиями, чтобы подключить Euphoria к их проектам.
Через несколько лет Дэнхольм создал демонстрационный ролик технологии, которую его команда создавала для Red Dead Redemption, но в сеттинге обычного фильма жанра экшн. В ролике персонажей сбивали машины, протаскивали под дулом пистолета, толкали с лестниц, в их лица брызгали из перцового баллончика и так далее, причем всё это было полностью интерактивно, и каждый раз результаты были разными. По мановению судьбы, команда перешла от Red Dead Redemption к GTA 4, где им предстояло создавать похожие сценарии в городской песочнице Rockstar.
Euphoria отличается от остальных подобных технологий тем, что комбинирует анимацию в реальном времени с ИИ, биомеханикой и физикой, и всё это — без необходимости прибегать к захвату движений. Результаты получаются разнообразными, потому что процессор заставляет персонажей реагировать — уклоняться, если кто-то подходит близко, хвататься за раны, отшатываться, если их легонько толкают, или падать, споткнувшись. В них также закодировано что-то вроде инстинкта самосохранения, поэтому иногда они могут самостоятельно оправиться от удара или уклониться от угрозы. Это не выглядит как нечто заранее запрограммированное, поэтому такие реакции становятся неожиданными для игрока. Вот почему так весело бывает залететь на вертолете на электростанцию Либерти-сити и смотреть, как его лопасти перемалывают рабочих.
С релиза GTA 4 прошло уже почти десять лет, и до сих пор выходят игры, которые пусть и превосходят криминальную серию Rockstar в дизайне открытого мира, но проигрывают в небольших деталях, за счёт которых симуляция этого мира и становится интересной.
Если вы когда-нибудь часами запускали Тревора и компанию в кирпичную стену в GTA 5, то знаете, о чём я: этот приятный шлепок, то, как они скрючиваются на земле, и каждый раз по-разному. Истинное наслаждение для внутреннего садиста.
Однако если на улицах Сан-Франциско из Watch Dogs 2 вас собьёт машина, ваш персонаж, скорее всего, бесцеремонно проскользит в сторону или окажется у неё на крыше. А вот если в Либерти-сити вас машина собьёт, то результатов может быть миллион: ваша голова ударится о капот или лобовое стекло, вас может перекинуть через машину, оттолкнуть в сторону, даже переехать. Возникает чувство, будто случиться может всё, что угодно.
Так почему же другие AAA-студии не стали пользоваться этой технологией сразу после релиза GTA 4?
Безусловно, услуга это была недешёвая. Все проекты на Euphoria создавались с нуля, чтобы идеально соответствовать конкретной игре — в NaturalMotion выяснили, что такой подход давал наилучшие результаты. Именно поэтому в Star Wars: The Force Awakens вы можете раскидывать модельки персонажей с помощью Силы, а в GTA 4 человек схватится за ручку двери едва украденной у него машины, когда вы ударите по газам.
Сейчас интегрировать Euphoria стало гораздо легче, поскольку теперь она идет в комплекте с Morpheme, межплатформенным программным обеспечением NaturalMotion. Morpheme использовалась в Quantum Break, Until Dawn, и Killzone: Shadow Fall. Однако физика персонажей в этих играх и близко не стояла с моделями из игр Rockstar, потому что им недоставало той дорогой, уникальной интеграции. Разумеется, важную роль сыграло то, что движок RAGE и рабочая этика Rockstar прекрасно дополняли такой подход.
Rockstar хотела создать симуляцию жизни: всё, от ежедневной рутины NPC до нюансов их движений, подчинялось почти реальной физике и генерировалось в реальном времени. Чтобы достигнуть этого, NaturalMotion был предоставлен полный доступ к исходному коду физической части RAGE, так что вся эта затея строилась на максимальном сотрудничестве.
RAGE и так был способен на правдоподобную симуляцию физики, но Rockstar параллельно работала над специальной функцией под названием «артикулированное поведение тел по методу Featherstone», благодаря которой удавалось более точно симулировать поведение двуногих существ.
Модельки двуногих собираются из жёстких форм столкновений (collision shapes), а выглядит это почти как набросок художника — образ человека, состоящий из грубых цилиндров и угловатых выступающих частей, своего рода заготовка, которой впоследствии добавят детали. Между каждой формой располагаются сочленения, чтобы части модели могли двигаться независимо — локти, лодыжки, голеностопы, колени и даже точки перегиба на торсе. К этим суставам подсоединяются движители, симулирующие человеческие мускулы.
Вы наверняка видели, как игровая физика сходит с ума, когда выступающие части моделей застревают в ландшафте: персонажи неимоверно растягиваются или дрыгаются, лёжа на земле. Это потому, что обычные физические движки работают с каждой частью модели по отдельности. То, как ужасно извиваются модели персонажей, это лишь потуги сочленений вернуть части тела в нормальное положение, когда игра дает сбой.
Этот приём хорошо соединялся с «Динамическим балансировщиком», технологией, созданной Томом Лоувом (Tom Lowe), инженером поведения моделей из NaturalMotion. Динамический балансировщик позволял персонажам GTA 4 сохранять баланс.
«Мы не просили его [Featherstone] у Rockstar, они сами начали всё разрабатывать. Даже наняли для этого профессора», — рассказал мне Том Лоув в электронном письме. Видите ли, главная проблема двуногих моделей, работающих в рамках игровой физики, заключается в том, что они ходят на своих самых слабых частях — по сути, на маленьких коробочках, соединенных с голеностопными сочленениями, — так что крепиться эти части должны прочно. Featherstone это обеспечивал.
Результаты менялись от проекта к проекту, вычислительные мощности требовались более серьёзные, по сравнению с традиционными методами, да ещё и студии нужно было нанимать специалиста по анатомии. Более того, продать такие функции тоже сложно. Фотореалистичное окружение дает игроку возможность погулять по красивым локациям. Геймплейные фишки затягивают. Но надпись «реалистичные модели персонажей» на коробке вряд ли кого-то привлечёт, так что большинство разработчиков предпочитают не тратить деньги и время на их создание. Более традиционные, вручную сделанные анимации гораздо приятнее выглядят в геймплейных трейлерах, ведь сложно поддерживать общий стиль игры, когда в определенных условиях динамическая симуляция отбирает контроль у запрограммированных анимаций.
Дэнхольм считает, что теперь этот сложный процесс нужно упростить и удешевить, чтобы разработчики могли пользоваться такими технологиями так же просто, как новейшими игровыми движками вроде Unity или Unreal 4. Euphoria можно даже превратить в общее решение, которое можно будет просто подключать к популярным игровым движкам. Правда, в результате всё равно не получатся модели как в играх Rockstar, но это всё равно будет прогресс.
Инди-студия Punches Bears сейчас создает на Unity нечто, основанное на физически заданной анимации. В некоторых из их проектов медведи танцуют под Nas, в других есть медвежье родео, в третьих — медведи с бензопилами. Да, с темой они точно определились. Однако помимо медведей, во всех их проектах физика персонажей используется весьма необычно и интересно. Вот небольшой кусочек промежуточного результата:
В AAA-пространстве Ubisoft тоже потихоньку улучшает физику персонажей. Прототип под названием IK Rig демонстрирует каркас персонажа, который способен на гладкое, отзывчивое движение по меняющемуся ландшафту. Другое техническое демо студии с последней GDC тоже показывает определённый прогресс в основанной на физике анимации персонажей: здесь и биомеханически корректный перенос веса, и мягкое ускорение и замедление моделей, и правдоподобная задержка между физическим воздействием и анимацией. На протяжении всего демо движения персонажа контролировались игроком.
Если развитие этих инструментов анимации не прекратится, то возможно, через несколько лет результаты вроде тех, что выдает Euphoria, станут обычным делом. Может, когда-нибудь даже появится игра, которая даже превзойдет феноменальную физику персонажей из GTA 4. Нужно лишь чтобы больше разработчиков обращали внимание не на то, что лежит на поверхности. Быть может, их, как и NPC из GTA 4, нужно лишь немного подтолкнуть.
Источник: