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

От Half-Life: Alyx и Grand Theft Auto VI до Yakuza: Like a Dragon и Resident Evil Requiem — смотрим, как жидкость в бутылках трясётся.

Замедленный отрывок из второго трейлера GTA VI, чтобы получше было видно объект нашего сегодняшнего изучения

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

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

Всякие бутылки по окраинам сети ходил и собирал Риверандер — всё ради того, чтобы посмотреть, как жидкость бултыхается в сосудах. Ну а FunPay ему звонкой монетой (и даже не одной) отплатил.

Тут кое-что попрактичнее бутылок от зелий: пополняй Steam на FunPay

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

Half-Life: Alyx

А началось всё с Half-Life… Ну ладно, точнее будет сказать, что Alyx точно не была первой игрой, где появилась физика жидкостей в сосудах, но она задала определённый тренд среди VR-разработчиков. И неудивительно, учитывая, что там вышло у Valve — поэтому рассказ я и решил начать именно с неё.

В мае 2020 года игра получила обновление до версии 1.4, добавившее в игру наш сегодняшний объект изучения. Вот как это выглядит на статичных скриншотах…

…а вот как в движении. Ну круто же, правда? Как говорится, топ-100 деталей в видеоиграх.

Это обновление вызвало интерес у игроков, и они принялись его пристально изучать. Так, например, пользователь 2kliksphilip с гордостью признал, что «провёл весь день, сидя на корточках, сгорбившись, с открытым ртом и обезьяньим заворожением, разглядывая виртуальные бутылки».

Это такая крутая новинка, которая настолько крута, что тебе всё равно, насколько не круто ты из-за неё выглядишь.

2kliksphilip

Результаты своих исследований он рассказал в видео. Я использую фрагменты оттуда здесь. Итак, речь идёт не только правильном соблюдении физики, но и…

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

Один из самых популярных комментариев под видео содержит объяснение работы этого трюка.

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

Именно то, что им удалось столь убедительно имитировать жидкость исключительно средствами шейдеров, делает эту функцию по-настоящему потрясающей.

fakename8749

Но гораздо подробнее принцип работы объяснили сами разработчики. За магию, к слову, стоит поблагодарить Мэттью Уайлда — ему было нечего делать в тогдашний локдаун, и он решил потратить время на реализацию фичи. Вот как он сам описывает свою работу.

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

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

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

Мэттью Уайлд

На самом деле там гораздо больше интересностей, но я выделил только главное. В любом случае, как я уже писал выше, труд Мэттью Уайлда задал тренд среди разработчиков.

Вот, например, пользователь под звучащим именем Lone Developer решил создать свою систему физики жидкости для VR в Unity именно под впечатлением от Alyx.

И это уже не говоря о других VR-играх. Кстати, о них… там реализация шейдера гораздо попроще, но давайте всё же взглянем на пару-тройку примеров.

Red Matter 2

В головоломке Red Matter 2 для VR тоже можно потрясти бутылки, но без пузырьков и пены.

Фрагмент видео взят с канала BBOYRAMEN

VR Bartender

Логично, что такая фича должна была появиться в различного рода симуляторах бармена и алхимика…

Фрагмент видео взят с канала Xifo

Как вы уже заметили, реализация тоже простая. Однако тут у разработчика задача стояла совершенно иная, о чём он и рассказал у себя в блоге, так что понимаемо.

Бюджет производительности был очень жёстким, поскольку в сцене находилось много таких бутылок, а игра должна была работать при 70 FPS на Oculus Quest 1 (Android).

Potion Pals

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

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

Цель — создать реалистично выглядящее зелье в реальном времени для использования в VR-игре.

Кристофер Розати

И выглядит это красиво — ну вы сами посмотрите.

Зелье силы
Зелье лечения

Вот так примерно дело обстоит с VR-играми. Есть больше примеров, но они все одинаковые в своей сути. А как дело обстоит с обычными играми? Давайте смотреть.

Grand Theft Auto VI

Неожиданный (или весьма ожидаемый, как посмотреть) гость в нашем списке — игра, которая ещё не успела выйти, но шуму создала.

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

Мне пришлось кадрировать видео. А ещё уменьшить скорость — поэтому не удивляйтесь, что в этой секции такие медленные видео

Пузырьки — вот они, наконец-то! Состояние закрытой бутылки и её содержимого можно сравнить с открытой.

А вот тут даже из-за движений персонажа всё содержимое выплёскивается наружу.

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

Ну, и как в случае с Alyx, это вдохновило других разработчиков — в этом ролике, например, рассказывают, как воссоздать фичу в Unreal Engine 5.

Counter-Strike 2

Valve не могла так просто оставить свои наработки, а потому жидкость появилась и в коктейлях Молотова в Counter-Strike, перешедшей на новый уровень в 2023 году.

Вот тут показывают как было, и как стало.

На самом деле ничего особенного в сравнении с тем, что мы уже видели. Но, с другой стороны, для Counter-Strike и не нужно дополнительных прикрас

Resident Evil Requiem

Вообще, физику жидкости в играх любят делать для коктейлей Молотова. Вот вам актуальный пример — последняя номерная часть Resident Evil.

Last of Us и Last of Us II

А вот ещё более ранний пример — Last of Us II.

Но на самом деле фича была ещё в первой части дилогии — причём без всяких ремастеров или ремейков, в оригинале 2013 года.

Фрагмент видео взят с канала Regular Dave

The Legend of Zelda: Twilight Princess HD

А ещё жидкость плескалась в склянках в HD-ремастере Twilight Princess.

Фрагмент видео взят с канала MIGUEIMER. HD-ремастер

И вроде бы это было даже в оригинале — а это 2006 год, что делает это самым ранним примером в списке.

Like a Dragon: Infinite Wealth

Помните, как многих удивила сцена с реалистичным поеданием хлеба из Yakuza: Like a Dragon?

Нет, серьёзно, изначально я думал, что никому нет дела — но вот даже на этом видео целых два миллиона просмотров

Ну так вот, оказывается, что в продолжении, Infinite Weatlh, завезли вполне себе уга-буга физику… пива.

Тут и пена, оставшаяся в кружках, и пузырьки, и даже падающие капельки. Обратите внимание кружку Адачи, человека в клетчатом костюме

Вот он, настоящий конкурент Grand Theft Auto VI — японская GTA… ладно, пошутили и хватит.

Может, и не завезли, ведь это было ещё в первой части, правда, не с пивом, а с сакэ и тоже в катсцене.

Monster Hunter Wilds

Впрочем, внимание японцев к деталям, связанным с напитками и едой, удивления не вызывает — процесс готовки был круто показан ещё в серии Monster Hunter.

Вот вам пример из последней основной части серии — Wilds. Ну вот, теперь и самому захотелось чая…

Фрагмент видео взят с канала B0llen

Snowrunner

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

Сумасшедшая езда от игрока Brighiz

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

Cyberpunk 2077

В Cyberpunk 2077 ситуация с бутылками интересная: в основном они непрозрачные, ничего не разглядишь. Но в сценах, внимательно проработанных разработчиками, можно увидеть и прозрачные.

Может, это свет в клубе таким чудесным образом действует?

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

Кстати, об этом — вот целое видео, посвящённое эксперименту, в котором автор пытается проверить, какие напитки в игре можно допить до конца.

Фрагменты из этого видео я и использовал в секции — оно интересное, рекомендую посмотреть полностью

Red Dead Redemption 2

Тут дела обстоят ровно таким же образом, как и с «Киберпанком» — в основном бутылки непрозрачные, но в стаканах жидкость видно.

Фрагмент видео взят с канала Hectorlo — Extras

Но Red Dead Redemption 2 может удивить другим — вот.

То есть игра правильно симулирует жидкость внутри этого сосуда для молока, и жидкость вытекает правильно из дырок в зависимости от обстоятельств…

…так, звучит двусмысленно, но давайте без всяких намёков.

А на этом у меня всё — это самое интересное, что я смог найти. Дальше дело за вами и вашей памятью.

142
8
8
5
5
3
3
2
1
1
1
1
1
1
1
1