Havok и другие физические движки

Havok и другие физические движки

Компания Havok представила очередную версию своего одноимённого движка. Havok 2024.2 предлагает расширенную поддержку больших миров, полную интеграцию в Unreal Engine 5.5, возможность рендеринга тканей на GPU, автоматическую генерацию LOD и несколько других функций.

Новость, по-большому счёту, новостью не является. Havok регулярно обновляется примерно раз в полгода. Предыдущие версии были представлены 15 июля 2024 года (Havok 2024.1) и 31 января 2023 года (Havok 2023.1).

Однако в этот раз компания решила выложить пример работы своего движка на замедленный YouTube. И сделала это впервые за более чем 10 лет простоя:

Что можно сказать, глядя на всё это? Камушки падают красиво, но ничего нового, никакого «вау»-эффекта. Похожий уровень взаимодействия объектов был показал ещё в 2012 году, когда вышел Unreal Engine 4:

Да и до этого подобное были, просто не было железа, способного обрабатывать подобные сцены без сильной просадки fps. И вот интересно — что у нас было раньше и что дошло до наших дней?

Karma Engine

Это первый физический движок нового поколения, пришедший на смену Motion Capture. До Karma Engine практически все игры использовали предзаписанные анимации смерти. Иногда это приводило к забавным ситуациям, когда тело противника или игрока лежало на воздухе, зацепившись за поверхность левой пяткой.

Дебютировал Karma Engine осенью 2002 года в Unreal Tournament 2003 и это было действительно круто. Особенно учитывая, что было это в первый раз. Движок был интегрирован в Unreal Engine 2.x, на котором вышло множество игр.

Судьба же самого движка сложилась печально. Компанию-разработчик MathEngine приобрела Criterion Games, а её, в свою очередь, приобрела Electronic Arts для внутренних проектов. После этого Karma Engine более не лицензировался сторонним студиям, а потом тихонько умер в составе движка RenderWare.

Geo-Mod

Havok и другие физические движки

В своё время был прорывом не меньшим, чем Karma Engine, но специализировался на разрушении окружения. Вокруг него была буквально построена игра Red Faction, особенностью которой была возможность взрывать стены. Сейчас терраморфинг не вызывает удивления, а тогда смотрелось очень перспективно.

Geo-Mod дожил до версии «2», а потом также скончался в недрах почившей Volition, которую в своё время приобрела также почившая Embracer Group.

Havok

Наш сегодняшний герой. Представили Havok ещё в 2000 году, но полноценно о себе он заявил в Half-Life 2 в составе Source Engine:

Тогда это был взрыв мозга. Катящиеся бочки, просто нереальная лицевая анимация, физика взаимодействия с водой, следы от пуль на текстурах, расщепляющиеся от выстрелов доски… такого не видел и не делал ещё никто. Чтобы посмотреть на демо Half-Life 2, народ на E3 выстраивался в огромную очередь.

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

Havok и другие физические движки

PhysX

Второй/первый по популярности движок с интересной судьбой. Был приобретён компанией Ageia у NovodeX AG и начал затачиваться под карту-ускоритель физики (PPU):

Havok и другие физические движки

Д абы заткнуть за пояс конкурентов, под PhysX даже разработали демо-игру CellFactor:Revolution:

Выглядело очень интересно, да и работало на PPU шустро. Обычные движки, не имевшие поддержки в виде аппаратного ускорения физики, на CellFactor сильно тормозили.

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

Сам же PhysX нашёл применение во множестве движков и игр, включая UnrealEngine и Unity. The Wither 2/3, Cyberpunk 2077, Metro, Mafia, DayZ – всё это игры, работающие с PhysX.

Разрушаемость

Несмотря на постоянное развитие физических движков, в играх особого прогресса не наблюдается. Да, плащ и волосы героя теперь красиво развеваются, волны получше, научились красиво симулировать покачивание деревьев на ветру, бочки и скамейки в Demon’s Souls Remake эффектно ломаются, но всё это было. А вот такого падения камней, как в начальном ролике — такого нет. Да и вообще игр таких очень немного. В чём же дело?

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

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

В результате мы имеем примерно тоже самое, что и лет 15-20 назад. Отдельные элементы — да. Тотальная физическая модель — нет. И непонятно, когда и будет ли это вообще.

P.S. Ещё у меня есть бессмысленные и беспощадные ТГ-каналы (ну а как без них?):

О науке, творчестве и прочей дичи: https://t.me/deeplabscience

Об играх и игровой индустрии: https://t.me/gameprodev

2
2 комментария

Которые используют только в катсценах.

Ну ничего, когда-нибудь о реалистичной физике вспомнят, лет через 15-20, когда закончат с лучами.