Рэгдолл-физика: что это такое и в каких играх встречается / Skillbox Media
Разбираем, как работает технология и почему она вполне может стать основой для ключевых механик.
Содержание:
Курс с трудоустройством: «Профессия 3D-дженералист»
Узнать большеЗамечали когда-нибудь, как персонаж какой-нибудь видеоигры после смерти неловко падает на пол, а его конечности при этом неестественно выворачиваются в разные стороны? Это демонстрация рэгдолл-физики. Эта технология активно используется в играх, чтобы добавить движениям персонажей хаотичности — возможно, даже комичности. Или же, наоборот, чтобы добиться более реалистичного эффекта.
В этой статье мы рассмотрим принципы работы рэгдолл-физики, а также расскажем, какие решения используются для её применения, и приведём примеры её реализации.
У нас есть телеграм-канал «Чекпоинт», где мы собираем полезные материалы для начинающих разработчиков. Там и статьи о геймдизайне, и гайды по софту, и даже интервью с теми, кто уже выпустил собственную игру. Подписывайтесь!
Что такое рэгдолл-физика
Рэгдолл-физика (от англ. ragdoll physics) — это один из видов процедурной анимации в компьютерной графике, с помощью которого можно создавать реалистичные движения персонажа или моделировать их динамику с учётом реальной физики (например, в случае гибели персонажа или потери его контроля над телом). Для создания нужного эффекта каждой части модели задаются определённые физические свойства — такие как вес, реакция на гравитацию, импульс и поведение при столкновении с другими объектами.
Впервые рэгдолл-физика появилась в приключенческом экшене от первого лица Jurassic Park: Trespasser 1998 года. И хотя игра не снискала большого успеха, в ней были революционные для того времени механики взаимодействия с предметами и окружением, основанные на физике.
К тому же в движениях главной героини и динозавров использовалась инверсная кинематика. За счёт этой технологии конечности рига, принадлежащего персонажу, могли двигаться целиком, а не отдельными сегментами. Кроме того, к частям тела применялась физическая симуляция, благодаря чему движения по меркам конца 1990-х годов выглядели органичными. Кстати, то, как игрок манипулировал предметами и оружием, вызывает ассоциации с современными VR-играми, где взаимодействие с разными объектами основано на реалистичной физике.
В дальнейшем технологию начали активно использовать и в других играх: достаточно вспомнить, как падали погибшие враги и 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 и других. В них, скажем, при падении или гибели персонажа запускается готовая анимация, которая плавно переходит в процедурную. В результате тела могут перекатываться по поверхности и падать с высоты, размахивая конечностями в воздухе.
Рэгдолл-физика может применяться и к определённым участкам тела. В этом случае стандартная анимация перестаёт работать, и тогда за движение отвечает только физика. Всё зависит от того, какого результата необходимо достичь в итоге. Такой подход, к примеру, вполне подойдёт для ситуаций, когда персонаж ранен и не может идти самостоятельно, лишь опираться на напарников, несущих его. Тогда можно задать определённые параметры ногам, и они будут волочиться по земле. Но в таких случаях важно отслеживать ограничения и физические свойства, чтобы избежать неестественно вывернутых и болтающихся конечностей.
Также рэгдолл-физика используется для балансирования готовой анимации на определённой поверхности. Наверняка вы замечали в играх моменты, когда персонаж опирался ногой о камень или ступеньку лестницы. Такой подход усиливает реализм и экономит время аниматоров.
Рэгдолл-физика как основа геймплея
Учитывая, что разработчики создают массу интересных решений, внедряя физику в игры, «тряпичность» персонажей вполне может стать ключевой механикой. Вот несколько проектов, где подобная технология играет важную роль.
Знаменитая песочница, где можно проводить различные эксперименты, превращая игру в творческую лабораторию с неограниченными возможностями. В Garry’s Mod даже есть особенный инструмент — физическая пушка, которой можно буквально хватать и швырять модели, а также придавать им различные позы.
Ещё одна песочница, где можно, управляя козлом, создать много забавных ситуаций, порой доходящих до абсурда. Например, бодать всё, что движется, включая местных жителей, и устраивать полный хаос. Или цепляться языком за движущиеся объекты и волочиться таким образом по земле. На этих механиках завязаны некоторые задания в игре.
Духовная наследница Gang Beasts — мультиплеерная игра с милыми зверятами в главной роли. Сетевые потасовки сводятся к попыткам игроков удержаться на арене: для этого можно использовать различный реквизит для обороны в дальнем и ближнем бою — и тем самым кардинально менять ход матчей. Благодаря рэгдолл-анимации сложно предугадать, что случится через пару секунд, ведь нужно ещё как-то доковылять до противника, не споткнуться и не упасть. Именно из-за рэгдолл-физики в Party Animals постоянно возникает множество комичных ситуаций.
Платформер, где нужно играть за персонажа в костюме кролика, собирать морковки и преодолевать различные препятствия. За счёт рэгдолл-физики выполнять прыжки, перекаты и захваты совсем непросто. А в кооперативе, который поддерживает до четырёх человек, испытания становится проходить не только сложнее, но и веселее.
Безумные заезды в духе Happy Wheels, но от третьего лица. Испытания в Guts and Glory достаточно экстремальные, и столкновений с препятствиями избежать очень сложно. Рэгдолл-физика демонстрирует игроку последствия неудачных заездов: тела вылетают из транспорта и лишаются конечностей, тем самым показывая результат, к которому привела его оплошность.
Плюсы использования рэгдолл-физики в играх
- Реализм. Возможность комбинировать обычные анимации с физикой придаёт движениям правдоподобность и позволяет персонажам более органично взаимодействовать с окружением.
- Экономия времени аниматоров. Все расчёты физических процессов происходят автоматически в реальном времени. В результате специалисту не нужно создавать наборы движений для падения, получения удара или гибели персонажа.
- Такая физика может стать ключевым элементом в геймдизайне. Геймплей, основанный на рэгдолл-физике, получается динамичным, непредсказуемым (невозможно предугадать поведение тел в тех или иных условиях) и, конечно же, весёлым.
- Универсальность. Технология будет уместна практически во всех жанрах, начиная от шутеров, где тела врагов разлетаются под воздействием взрывной волны, и заканчивая головоломками, где управление персонажами усложняется из-за физики, как в Human Fall Flat.
- Нет проблем с интеграцией. В популярных движках есть готовые решения, но если они не подходят, то можно воспользоваться дополнительными плагинами.
Минусы использования рэгдолл-физики в играх
- Требует определённых технических знаний. В каждом игровом движке и программах для 3D-моделирования есть свои нюансы работы с твёрдыми телами. Поэтому, скорее всего, специалисту придётся искать неочевидные решения в официальных документациях или на форумах разработчиков. К тому же настройка смешанных анимаций требует тестирования и множества правок для того, чтобы можно было достичь идеального эффекта. Не говоря уже о том, что необходимо вводить ограничения, призванные стабилизировать вращения и движения твёрдых тел. В противном случае можно столкнуться с нежелательным комическим эффектом, когда конечности персонажа начнут выворачиваться в разные стороны.
- Возможны проблемы с производительностью (в масштабных сценах). Расчёты физики нагружают центральный процессор, и при большом количестве твёрдых тел на слабых системах не исключены проблемы с частотой кадров. Особенно это касается игр на мобильных платформах.
Итог
Рэгдолл-физика — многогранный инструмент для реализации творческих задумок разработчиков. Сейчас её можно встретить практически в каждой игре: технология помогает усилить реализм и может стать интересным решением, которое позволит добиться разнообразия механик и создать запоминающийся игровой опыт.
Если правильно интегрировать технологию в игру, рэгдолл-физика вполне может стать её визитной карточкой. И хотя она требует определённых навыков и ресурсов, её возможности вполне могут оправдать затраты. Ведь в современной индустрии, где ценится как реализм, так и нетривиальный подход к созданию геймплея, эффект «тряпичной куклы» не утратит своей актуальности.
Профессия 3D-дженералист
Вы станете универсальным специалистом, который умеет в 3D всё: создавать объекты и окружение, настраивать текстуры и цвет, анимировать модели и внедрять их в 3D-сцену.Освоите Houdini, Autodesk Maya, Blender, Photoshop, ZBrush, Marmoset 3D, Substance Painter, Marvelous Designer, Arnold и Rizom UV. Сможете претендовать на работу в рекламе, играх или кино.На иллюстрации: работа участника курса Евгения Кузнецова
Узнать подробнее