Настоящие скакуны: как работает анимация и ИИ лошадей в Red Dead Redemption 2 Статьи редакции
Особенности движения, поведения и справления нужды.
Автор YouTube-канала AI and Games Томми Томпсон выпустил видео, в котором рассказал о том, как устроены анимации и искусственный интеллект лошадей в Red Dead Redemption 2. Разработчики из Rockstar записали огромное количество всевозможных движений животного, из которых, на основе множества факторов, составляются комбинации. Мы выбрали из материала главное.
Площадь мира в Red Dead Redemption 2 составляет около 29 квадратных миль (примерно 46 кв. км), что делает лошадь незаменимой для преодоления больших расстояний и сложных ландшафтов. Всего в игре 19 пород скакунов — каждая со своими характеристиками и особенностями поведения. Для создания реалистичного компаньона, разработчикам приходилось думать не только о том, как конь перемещается по миру, но и о том, как он реагирует на разные типы местности, и о многом другом.
Как рассказывал ведущий программист ИИ и геймплея Тобиас Клиентус на GDC в 2021 году, Rockstar стремилась к тому, чтобы между игроком и его лошадью в RDR2 формировалась эмоциональная связь. Это вовсе не значит, что скакуны из оригинала были плохи, однако разработчики пересмотрели многие аспекты их поведения при работе над сиквелом. Движения лошадей были более неуклюжими, животные резко переходили с аллюра (типа походки) на аллюр. В общем, кони ощущались скорее как «автомобили с ногами».
Для того, чтобы кони были реалистичными, в Rockstar сосредоточились на трёх основных системах.
- Система движения (Locomotion System), которая позволяет лошади двигаться на разной скорости и следит за тем, чтобы всё выглядело максимально реалистично, без конфликтов с анимацией.
- Менеджмент местности (Terrain Managment) — система, которая анализирует окружение и связана не только с анимациями лошади, но и с её поведением.
- Индивидуальность (Personality Layer) — система, добавляющая лошади множество поведенческих особенностей, чтобы она вела себя как живая.
Система движения
За работу над ИИ и управлением животным взялись Rockstar North и Rockstar India. Для начала разработчики изучили, как ведёт себя лошадь, в седле которой находится профессиональный наездник. Исследование привело к первому фундаментальному изменению в поведении коней — введению бокового движения.
В индустрии оно встречается не часто — в играх лошади обычно просто поворачиваются на месте вокруг своей оси. Однако в реальности они задействуют передние ноги; с их помощью животные могут и «стрейфиться». Добавление бокового движения доставляет аниматорам проблем.
Как правило с помощью дерева смешения (blend tree), в котором несколько анимаций объединяются в разной степени, команда аниматоров определяет, как меняются анимации персонажа и при каких условиях. Так, например, устанавливается, при какой скорости движения персонаж должен переходить с простого шага на бег.
Эти деревья подходят для небольших наборов анимаций, которые легко стыкуются друг с другом. Но чем более реалистичными вы хотите видеть движения в своей игре и чем больше в ней уникальных анимаций, тем более комплексными становятся деревья смешения. Разработчикам приходится вручную определять правила смешения анимаций и указывать, в какие моменты оно должно происходить.
В случае с боковым движением сложность заключалась в том, что изначально у лошадей было всего два параметра: скорость и угол поворота. Их учёт у четырёхногого животного — это уже достаточно трудная задача. Например, если мы говорим о скорости лошади, то в зависимости от неё меняется аллюр, а значит и движение ног. Кроме того, интервалы, с которым задние и передние копыта касаются земли, не постоянные.
Добавляя к скорости угол поворота, мы уже получаем весьма комплексную систему анимации со своими точками смешения на древе. Но боковое движение привносит в эту систему «третье измерение»
В таких условиях найти точки смешения невероятно трудно, поэтому в Rockstar задумались над тем, как автоматизировать этот процесс. Другие разработчики и прежде использовали ИИ для смешения анимаций — примеры этого можно увидеть в последних Hitman и в DOOM (2016). Фреймворк для анимации, созданный авторами RDR2, позволяет лошадям ускоряться, замедляться и поворачиваться так, чтобы все анимации адаптировались к поведению коня.
Система определяет, как двигается животное и как оно располагает свои ноги, а потом выявляет правильные анимации, которые можно использовать, основываясь на скорости прямого хода, бокового движения и поворота. При этом анимации не привязаны к конкретной скорости, а имеют минимальные и максимальные значения параметров, при которых возможно их проигрывание.
Эта сложная система позволила разработчикам добавлять новые анимации, не думая о том, как именно они состыкуются с другими. Кроме того, результаты автоматического смешения зачастую если не лучше того, что получается у человека, то точно не уступают ручной работе при заметно меньших временных затратах.
Для смены анимации аллюра в RDR2 используются непрерывные циклы ускорения и замедления, которые следят за изменениями скорости. Это касается и остановки животного, которая происходит достаточно плавно для того, чтобы игрок мог изменить своё решение в последний момент, но не слишком отзывчиво, чтобы пользователь понимал — он управляет не машиной, а живым существом.
Менеджмент местности
Местность должна влиять на поведение лошади. Животное реагирует на перепады высоты, деревья и иные препятствия, которые встречаются ему на пути. Не стоит забывать, что конь — это всё ещё персонаж под управлением ИИ, который волен игнорировать команды от игрока, если их выполнение представляет угрозу жизни.
Кроме того, движения лошади должны меняться в зависимости от того, куда она ступает, по какой поверхности идёт. Обычно за это отвечает инверсная кинематика, позволяющая определять положение связанных частей модели. Благодаря ей при спуске персонажа с горы будет проигрываться та же анимация, что и при движении по ровной поверхности, но ноги модели будут реалистично реагировать на неровности ландшафта.
Однако в случае с лошадью такой метод работает не слишком хорошо. Поэтому в Rockstar создали специальные анимации для спуска и подъёма, которые работали в связке с системой, оценивающей наклон лошади. Но вместо того, чтобы смешивать все эти анимации в одну большую кучу, в Rockstar использовали кластерный подход, чтобы сгруппировать анимации по типу: одни для подъёма, другие — для спуска, а третьи — для движения по ровной поверхности.
Анимации выбираются в зависимости от наклона лошади. Однако и это ещё не всё. Типы анимаций сегментировали ещё сильнее в зависимости от «ведущей» ноги лошади: правой или левой.
Таким образом, система смешивает анимации, которые зависят от скорости, поворота, наклона и ведущей ноги коня. К этому добавляется механизм определения «глубоких поверхностей» вроде воды, грязи или снега, а также сила ветра на локации. В зависимости от текущих условий игра определяет, какие движения должны проигрываться. Всего в RDR2 порядка 6,3 тысячи различных движений лошади и наездника.
Игра определяет вектор движения лошади и, если какое-то препятствие стоит у неё на пути, мягко направляет её в сторону с помощью бокового движения. Делается это очень быстро, так, чтобы игрок надолго не терял контроль над скакуном. Во время тестов эта система работала «слишком хорошо», поэтому разработчикам пришлось немного «осадить» её, чтобы у пользователя всё-таки оставалась возможность врезаться в дерево.
Иначе дела обстоят с обрывами. Система движения определяет, что лошадь несётся к пропасти (для этого разработчикам пришлось отдельно помечать каждую из них). Затем, на основе скорости и шага коня, выбирается анимация, которую нужно проиграть перед полной остановкой.
Индивидуальность
Один из самых простых способов добавить индивидуальности лошадям — заставить их реагировать на внешние раздражители. Реагируя, конь может проигнорировать команду игрока или вовсе сделать что-то по-своему. Конечно, тут важен баланс, чтобы пользователь не терял управление над своим транспортным средством постоянно.
Индивидуальность лошади связана с понятием «мотивации», возможностью негативно реагировать на происходящее в мире. Система мотивации — часть утилитарного ИИ, оценивающего конкретные вещи, влияющие на поведение NPC.
Так, в RDR2 есть «мотивация волнения». Если она будет достаточно сильна, то изменятся не только анимации, но и то, насколько отзывчивым будет управление лошадью. На самом деле, возможность погладить коня добавлена в игру не просто так — игрок действительно успокаивает скакуна, снижая значение «волнения».
Система также отвечает за поведение лошади, когда она ранена или устала. Кроме того, у животных есть скрытый параметр «мотивации покакать». Это значит, что анимация опорожнения проигрывается не в случайное время, а лишь когда накапливается определённая «критическая масса».
Комментарий недоступен
Комментарий недоступен
Это точно те же Рокстар, которые ремастеры ГТА выпустили?
Комментарий недоступен
Ремастеры делали гров стрит
Комментарий удален модератором
Точно не те
Комментарий недоступен
Мне кажется, материалы с разбором этой великой игры будут появляться вплоть до выхода третьей части (если она выйдет вообще). Столько в ней всего интересного для детального анализа и столько сил разработчиков вложено.
Комментарий удален модератором
Кони еще и на холодную погоду реагируют
Кстати, а они постепенно входят или сразу меняют положение?
Про яйца не знаю а вот мои руки уже готовы.
Комментарий недоступен
Круто, а статью уже успел посмотреть?
Насколько же эта игра по механикам и проработанности лучше всего что есть сегодня. Такую планку проработанности вряд-ли кто-то сможет превзойти.
грув стрит гейс думаю смогут
Эхх как же хочется нормальный компьютер что пройти этот шедевр на ультрах...
там даже на минималках графон хорош... в принципе
если есть видеокарта уровня GTX 1060 6Gb, то после оптимизации по гайду от Hardware Unboxed можно приступать
Игра на ультрах в 4К пока лучшее сочетание по художественному оформлению в совокупности с графикой, что есть на рынке. Не могу остановиться делать скриншоты в этой игре уже 3 года. Начинал на xbox one x, продолжил на ПК.
В каждой локации абсолютно разное ощущение от погоды, солнца, лунного света и т.д. Невероятная красота.
Художники и прогеры этой игры просто боги. Помню в 2018 от пролога словил незабываемые впечатления, такого некст-гена я еще не видел в этом поколении.
Я дефолтную лошадь почти сразу же с горы спустил на тот свет. А потом бегал с Теннесийской как с родной.
Даже у лошадей в видеоигре есть мотивация…
это конечно все интересно, игра отличная и все такое... просто... зачем настолько погружаться в детализацию)
В этом и вся прелесть, так как такая детализация и огромное внимание к деталям дарит большое удовольствие и погружает в мир с еще большей силой, ну и конечно отличный сюжет, глубокие и проработанные персонажи, отличные диалоги, невероятная атмосфера. Для меня RDR 2 один из лучших шедевров в истории игровой индустрии.
Чтобы погрузиться в мир.
На самом деле внимание к деталям и делает игру живой. Поэтому конвеерные игры кажутся бездушными и мертвыми.
А на сколько надо? Именно такие детали и делают мир рдр живым
Комментарий недоступен
даа, шедевр на все времена конечно, даже словами выразить не могу как сильно мне понравилась игра, но в то же время есть понимание что такого уровня игры вряд-ли ещё появятся
Возможно именно это заставляет фанатов по многу раз игру перепроходить, я вот дважды уже прошёл и на 100% тоже, а есть люди которые и шесть раз успели, игра просто даёт уникальный опыт. Как говорится, незаменимых нет, есть неповторимые.
Некстген который опередил время на лет 5. Конечно же версия для пк =)
Комментарий удален модератором
Комментарий удален модератором
Мне почему-то казалось, что игровая лошадь должна обладать собственным интеллектом, чтобы вести как настоящее живое существо. Поэтому в отличии от машины, которую ты направлял с обрыва, лошадь останавливается из-за инстинкта самосохранения. Также она не должна впиливаться со всей скорости в дерево. В игре такое часто происходит. Или я что-то не понимаю и реальные лошади со всадником именно так себя ведут?
В реальности лошади могут быть непредсказуемыми, и пугливыми например. Если такую еще и пришпорить, то она тебя и в лес унесет, и в обрыв скинет, и об дерево ебнет.
Та там итак всё потрясно, нечего даже показывать))
Побольше бы таких статей
Есть ли смысл брать игру на Series S, если по обратке 720р?
Игра безумно красивая даже на базовом Хуане.
Но, конечно, если есть возможность в будущем взять сериес х, то лучше подождать. А там, может и обнову для некстгена запилят. А может и нет.
Комментарий удален модератором
Комментарий удален модератором
И сколько времени и ресурсов было угроблено, ради подобных комментариев в пару строк? Вместо того чтоб пойти поиграть в очередные безыдейные 2д инди прыгалки, с "инновационным" геймплеем.
Да да да, лошади все разные, над ними поработали и т.д. . Вопрос такой: почему тогда параметр скорости на работает? Лошадь со скоростью 2 преодолевает дистанцию 5:05 а лошадь со скоростью 8 за 4:55 ? Иными словами они впаривают одинаковую скорость что на кляче что на скаковой лошади. А это явно поважнее яиц на морозе.
Комментарий удален модератором
Комментарий удален модератором
Комментарий удален модератором
Обожаю этот подсайт
Подход, мать его, подход.
Как после RDR2 можно было так поступить с ремейками и отдать "индусам"...
Действительно.
Комментарий удален модератором
Я вот чего не понял. Рокстары использовали сложный ИИ для смешивания анимаций, предусмотрели кучу мелочей, но...
Размечали все пропасти вручную? Серьёзно? Или всё-таки у них был какой-то алгоритм, который процедурно метки расставил?