Скидки до 60% и розыгрыш MacBook 0 дней 00 :00 :00 Выбрать курс
Геймдев
#статьи

Что такое рэгдолл-физика и как её применяют в играх

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

Иллюстрация: Катя Павловская для Skillbox Media

Замечали когда-нибудь, как персонаж какой-нибудь видеоигры после смерти неловко падает на пол, а его конечности при этом неестественно выворачиваются в разные стороны? Это демонстрация рэгдолл-физики. Эта технология активно используется в играх, чтобы добавить движениям персонажей хаотичности — возможно, даже комичности. Или же, наоборот, чтобы добиться более реалистичного эффекта.

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

Что такое рэгдолл-физика

Рэгдолл-физика (от англ. ragdoll physics) — это один из видов процедурной анимации в компьютерной графике, с помощью которого можно создавать реалистичные движения персонажа или моделировать их динамику с учётом реальной физики (например, в случае гибели персонажа или потери его контроля над телом). Для создания нужного эффекта каждой части модели задаются определённые физические свойства — такие как вес, реакция на гравитацию, импульс и поведение при столкновении с другими объектами.

Анимации тела Лары Крофт после гибели героини в ремастере Tomb Raider: The Angel of Darkness стали своеобразным мемом в сообществе игры
Скриншот: игра Tomb Raider 4–6 Remastered / Aspyr, Crystal Dynamics

Впервые рэгдолл-физика появилась в приключенческом экшене от первого лица Jurassic Park: Trespasser 1998 года. И хотя игра не снискала большого успеха, в ней были революционные для того времени механики взаимодействия с предметами и окружением, основанные на физике.

К тому же в движениях главной героини и динозавров использовалась инверсная кинематика. За счёт этой технологии конечности рига, принадлежащего персонажу, могли двигаться целиком, а не отдельными сегментами. Кроме того, к частям тела применялась физическая симуляция, благодаря чему движения по меркам конца 1990-х годов выглядели органичными. Кстати, то, как игрок манипулировал предметами и оружием, вызывает ассоциации с современными VR-играми, где взаимодействие с разными объектами основано на реалистичной физике.

Пример анимаций в геймплее Jurassic Park: Trespasser

В дальнейшем технологию начали активно использовать и в других играх: достаточно вспомнить, как падали погибшие враги и NPC в Half-Life, как Агент 47 перетаскивал тела своих жертв в серии Hitman и как модельки бандитов в Max Payne отправлялись в полёт после взрыва гранаты… Рэгдолл-физику активно используют и в современных играх, причём не только для визуализации мёртвых тел, но и для того, чтобы доработать другие анимации персонажей.

Как работает рэгдолл-физика

В зависимости от ПО или движка процесс настройки рэгдолл-физики различается, хотя общие принципы схожи. За реализацию технологии в играх отвечает физический движок — программный компонент, который воссоздаёт такие явления, как гравитация, столкновение объектов и сила притяжения.

Сейчас в сфере разработки игр существует много физических движков — например Box2D, Havok и Nvidia PhysX. У каждого свои особенности, преимущества и ограничения. В игровых движках, как правило, уже есть встроенные технологии для настройки физики — например, Chaos в Unreal Engine 5 или Nvidia PhysX в Unity. Тем не менее разработчик всегда может интегрировать альтернативные решения с помощью плагинов или скриптов.

Чтобы перенести свойства «тряпичной куклы» на персонажа, необходимо создать специальный объект — твёрдое тело (известный также как rigid body), а также особые соединения, позволяющие совместить несколько твёрдых тел, — джойнты (joints). Каждое твёрдое тело соответствует определённому сегменту модели — скажем, руке, ноге, голове или туловищу. В свою очередь, джойнты определяют диапазон и принцип движения между двумя твёрдыми телами. Иными словами, конечность может болтаться в рамках определённого радиуса или растягиваться по принципу пружины.

Затем твёрдым телам задаётся форма, масса и свойства для столкновений, а также положение и ориентация в пространстве и ограничения джойнтов. Всё это можно сделать в программах для 3D-моделирования (в Blender, Maya и других) или уже непосредственно в игровом движке.

Рэгдолл-физика и инверсная кинематика

Сейчас разработчики активно совмещают рэгдолл-физику с заранее подготовленными анимациями, основанными на инверсной кинематике. За счёт этого создаётся имитация более реалистичных движений и взаимодействий с окружением. Пример такого смешения можно наблюдать в GTA 5, Red Dead Redemption 2, сериях Call of Duty, Uncharted и других. В них, скажем, при падении или гибели персонажа запускается готовая анимация, которая плавно переходит в процедурную. В результате тела могут перекатываться по поверхности и падать с высоты, размахивая конечностями в воздухе.

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

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

Пример настройки процедурной анимации в Unity

Рэгдолл-физика как основа геймплея

​Учитывая, что разработчики создают массу интересных решений, внедряя физику в игры, «тряпичность» персонажей вполне может стать ключевой механикой. Вот несколько проектов, где подобная технология играет важную роль.


Garry’s Mod

Знаменитая песочница, где можно проводить различные эксперименты, превращая игру в творческую лабораторию с неограниченными возможностями. В Garry’s Mod даже есть особенный инструмент — физическая пушка, которой можно буквально хватать и швырять модели, а также придавать им различные позы.

Скриншот: игра Garry’s Mod / Facepunch Studios / Valve

Серия Goat Simulator

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

Скриншот: игра Goat Simulator 3 / Coffee Stain North / Coffee Stain Publishing

Party Animals

Духовная наследница Gang Beasts — мультиплеерная игра с милыми зверятами в главной роли. Сетевые потасовки сводятся к попыткам игроков удержаться на арене: для этого можно использовать различный реквизит для обороны в дальнем и ближнем бою — и тем самым кардинально менять ход матчей. Благодаря рэгдолл-анимации сложно предугадать, что случится через пару секунд, ведь нужно ещё как-то доковылять до противника, не споткнуться и не упасть. Именно из-за рэгдолл-физики в Party Animals постоянно возникает множество комичных ситуаций.

Скриншот: игра Party Animals / Recreate Games / Source Technology

Super Bunny Man

Платформер, где нужно играть за персонажа в костюме кролика, собирать морковки и преодолевать различные препятствия. За счёт рэгдолл-физики выполнять прыжки, перекаты и захваты совсем непросто. А в кооперативе, который поддерживает до четырёх человек, испытания становится проходить не только сложнее, но и веселее.

Скриншот: игра Super Bunny Man / Catobyte

Guts and Glory

Безумные заезды в духе Happy Wheels, но от третьего лица. Испытания в Guts and Glory достаточно экстремальные, и столкновений с препятствиями избежать очень сложно. Рэгдолл-физика демонстрирует игроку последствия неудачных заездов: тела вылетают из транспорта и лишаются конечностей, тем самым показывая результат, к которому привела его оплошность.

Скриншот: игра Guts and Glory / HakJak / tinyBuild

Плюсы использования рэгдолл-физики в играх

  • Реализм. Возможность комбинировать обычные анимации с физикой придаёт движениям правдоподобность и позволяет персонажам более органично взаимодействовать с окружением.
  • Экономия времени аниматоров. Все расчёты физических процессов происходят автоматически в реальном времени. В результате специалисту не нужно создавать наборы движений для падения, получения удара или гибели персонажа.
  • Такая физика может стать ключевым элементом в геймдизайне. Геймплей, основанный на рэгдолл-физике, получается динамичным, непредсказуемым (невозможно предугадать поведение тел в тех или иных условиях) и, конечно же, весёлым.
  • Универсальность. Технология будет уместна практически во всех жанрах, начиная от шутеров, где тела врагов разлетаются под воздействием взрывной волны, и заканчивая головоломками, где управление персонажами усложняется из-за физики, как в Human Fall Flat.
  • Нет проблем с интеграцией. В популярных движках есть готовые решения, но если они не подходят, то можно воспользоваться дополнительными плагинами.
Рэгдолл-физика в Happy Wheels построена на основе физического движка Box2D
Скриншот: игра Happy Wheels / Jim Bonacci

Минусы использования рэгдолл-физики в играх

  • Требует определённых технических знаний. В каждом игровом движке и программах для 3D-моделирования есть свои нюансы работы с твёрдыми телами. Поэтому, скорее всего, специалисту придётся искать неочевидные решения в официальных документациях или на форумах разработчиков.
    К тому же настройка смешанных анимаций требует тестирования и множества правок для того, чтобы можно было достичь идеального эффекта. Не говоря уже о том, что необходимо вводить ограничения, призванные стабилизировать вращения и движения твёрдых тел. В противном случае можно столкнуться с нежелательным комическим эффектом, когда конечности персонажа начнут выворачиваться в разные стороны.
  • Возможны проблемы с производительностью (в масштабных сценах). Расчёты физики нагружают центральный процессор, и при большом количестве твёрдых тел на слабых системах не исключены проблемы с частотой кадров. Особенно это касается игр на мобильных платформах.

Итог

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

Скриншот: игра Gang Beasts / Boneloaf, Rocket Science

Если правильно интегрировать технологию в игру, рэгдолл-физика вполне может стать её визитной карточкой. И хотя она требует определённых навыков и ресурсов, её возможности вполне могут оправдать затраты. Ведь в современной индустрии, где ценится как реализм, так и нетривиальный подход к созданию геймплея, эффект «тряпичной куклы» не утратит своей актуальности.



Бесплатный курс: «3D-моделирование в Blender с нуля» Учиться бесплатно
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована