Найти в Дзене
Tehnichka.pro

Серия RTX 5000 не поддерживает PhysX — плохо ли это?

Сегодня мы копнем одну интересную, а для кого-то и больную тему – что там с PhysX у новеньких видеокарт от NVIDIA. Казалось бы, прогресс и все такое… А тут внезапно: какие-то проблемы со старыми технологиями... Давайте разбираться, что к чему и стоит ли переживать, если вы уже присмотрели себе свеженькую RTX. PhysX — это движок, который умеет симулировать физику в играх. Он делает так, чтобы взрывы были реалистичнее, одежда на персонажах колыхалась на ветру, а осколки разлетались по всем законам баллистики и так далее. PhysX реализует все эти сложные эффекты с помощью аппаратного ускорения на графических процессорах NVIDIA. Изначально, еще в далеком 2002 году, когда этот движок только зарождался под именем NovodeX Physics, он работал на центральном процессоре. Но потом появилась компания AGEIA, которая в 2006 году представила движок PhysX и разработала специализированный чип для ускорения игровой физики — Physics Processing Unit (PPU). Чип этот позволял ускорять расчеты до 200 раз по с
Оглавление

Сегодня мы копнем одну интересную, а для кого-то и больную тему – что там с PhysX у новеньких видеокарт от NVIDIA. Казалось бы, прогресс и все такое… А тут внезапно: какие-то проблемы со старыми технологиями... Давайте разбираться, что к чему и стоит ли переживать, если вы уже присмотрели себе свеженькую RTX.

PhysX — это движок, который умеет симулировать физику в играх. Он делает так, чтобы взрывы были реалистичнее, одежда на персонажах колыхалась на ветру, а осколки разлетались по всем законам баллистики и так далее. PhysX реализует все эти сложные эффекты с помощью аппаратного ускорения на графических процессорах NVIDIA. Изначально, еще в далеком 2002 году, когда этот движок только зарождался под именем NovodeX Physics, он работал на центральном процессоре. Но потом появилась компания AGEIA, которая в 2006 году представила движок PhysX и разработала специализированный чип для ускорения игровой физики — Physics Processing Unit (PPU). Чип этот позволял ускорять расчеты до 200 раз по сравнению с процессорами 2006 года.

Но потом, в феврале 2008 года, на сцену вышла NVIDIA и купила AGEIA вместе со всеми ее разработками. И вот тут-то PhysX стал по-настоящему популярен! Уже через полгода NVIDIA выпустила драйвер, с помощью которого физические эффекты могли ускоряться не только на старом PPU, но и на ее собственных графических процессорах GeForce. Это был мощный удар по конкурентам из стана AMD, и PhysX стал козырем для NVIDIA, особенно в 2008-2010 годах, когда он активно использовался для продвижения видеокарт GeForce.

Многие наверняка помнят, как круто выглядели разрушения в Mafia 2, или как развевался плащ Бэтмена в Arkham City. Всего таких игр, где PhysX реально выстреливал и показывал себя во всей красе, было не так много, хотя в целом движок поддерживали около тысячи проектов. Среди наиболее известных таких игр: Mafia II, квадрология Batman: Arkham City, Borderlands 2, Mirrors Edge, Анабиоз: Сон разума, Metro 2033/Last Light, Assassins Creed: Black Flag.

-2

Но со временем приоритеты NVIDIA изменились. К середине 2010 года основной акцент в продвижении GeForce стал потихоньку смещаться в сторону другой технологии — тесселяции. Про физический движок компания не забыла, но со временем стала уделять ему все меньше и меньше внимания. А к 2016 году аппаратный PhysX практически исчез из игр, уступив место программному, который позволяет реализовывать более простые эффекты, но зато совместим с любым железом. И вот сейчас мы видим, как NVIDIA активно пытается переориентировать игровую индустрию в сторону технологий трассировки лучей и пути, и это самая сильная сторона современных GeForce в сравнении с конкурентами. Про PhysX и тесселяцию компания уже давно не вспоминает — как-то работает, да и ладно. А вместе с ней про эти технологии забыли и игровые разработчики.

И вот тут мы подходим к главной боли: новая линейка видеокарт RTX 5000 неожиданно оказалась несовместимой с PhysX в старых играх. Почему же PhysX вдруг отказался работать нормально на новеньких видеокартах RTX 5000 серии? Все дело в 12-й версии API CUDA, в которой прекратили поддержку 32-битных приложений. Новые видеокарты поддерживают только CUDA 12 и ее будущие версии, поэтому использовать аппаратно ускоренные неграфические расчеты в 32-битных приложениях на них уже нельзя.

А что это значит для нас, геймеров? А то, что практически все игры, которые вышли до 2015 года и использовали аппаратный PhysX, были 32-битными...

Получается такая незадача: когда вы запускаете такую игру на RTX 5000, она вроде бы видит совместимость с CUDA и позволяет вам включить все эти крутые физические эффекты. Но из-за отсутствия поддержки 32-битных расчетов на видеокарте, все эти сложные вычисления ложатся на плечи центрального процессора. А он, бедняга, просто не справляется с такой нагрузкой, и игра превращается в слайд-шоу из-за просадок FPS. Например, в том же Batman: Arkham City с включенным PhysX на RTX 5000 вы рискуете получить неиграбельные 10-15 кадров в секунду, хотя на более старых картах все было бы гладко. Единственные 64-битные игры с аппаратным PhysX, которые могут продолжать работать нормально на RTX 5000, — это Batman: Arkham Knight и Borderlands 3. Проекты, вышедшие после 2014 года, в большинстве своем, используют программную реализацию PhysX, и для них эта проблема вообще неактуальна.

-3

Кстати, тут стоит уточнить, почему вообще PhysX на современных процессорах так плохо себя чувствует. Дело в том, что NVIDIA не особо заморачивалась с оптимизацией программного режима движка с 2011 года. Он до сих пор использует старые SSE2 инструкции, а не более современные и быстрые AVX2 или AVX-512. Так что, даже если у вас топовый процессор, он будет тащить PhysX исключительно за счет своей грубой вычислительной мощи, а не благодаря эффективному коду. Ну и, само собой, NVIDIA это вполне устраивает, PhysX для них — уже пройденный этап.

Так кому же все это помешает, и что же теперь делать?

В первую очередь, это коснется тех, кто очень любит перепроходить старые игры с аппаратным PhysX. Если вы вдруг решите обновиться до RTX 5000, то столкнетесь с тем, что эти эффекты будут либо отсутствовать, либо вызовут жуткие тормоза.

Что же делать? Самый простой и очевидный вариант — снизить уровень PhysX до низкого или вовсе отключить его в настройках игры. Да, эффекты будут не такими навороченными, а где-то и вовсе пропадут (как, например, разбивающееся стекло в Mirror's Edge), но зато игра станет полностью играбельной, и FPS вернется в норму. Если у вас видеокарта AMD, то PhysX там в любом случае работал только на CPU, так что для вас вообще ничего не изменится. А вот для пользователей NVIDIA это будет ощутимая разница.

Для самых отчаянных ценителей олдскула есть и другой, более сложный путь: установить вторую видеокарту NVIDIA из предыдущих поколений (подойдут GTX 900, 1000, 1600) и назначить ее исключительно для ускорения физики в панели управления драйвером. Это, конечно, решение не для всех, ведь требует дополнительного слота, блока питания помощнее и, естественно, покупки еще одной видеокарты.

Есть, конечно, разговоры в сообществе, что это скорее проблема софтверная, а не аппаратная, и теоретически можно было бы создать какую-нибудь обертку для 64-битного CUDA, которая бы позволила старым 32-битным играм работать с PhysX на новых картах. Но это задача крайне непростая, требующая огромных усилий, доступа к исходному коду игр или реверс-инжиниринга. Маловероятно, что сами разработчики игр или NVIDIA будут этим заниматься, так что остается надеяться разве что на энтузиастов-мододелов. Но пока никаких готовых решений нет.

Так стоит ли переходить на RTX 5000?

Теперь самое главное: стоит ли вообще рассматривать RTX 5000 к покупке, если вы вдруг узнали об этой «фишке» данной линейки?

-4

Если вы ярый фанат старых игр с аппаратным PhysX, и для вас критически важны все эти эффекты, то RTX 5000, без второй видеокарты, вас сильно разочарует. В таком случае, возможно, стоит присмотреться к картам RTX 4000 серии, они пока еще поддерживают старые 32-битные PhysX-расчеты, а по мощностям, в целом, сравнимы с новой линейкой.

Однако, для подавляющего большинства современных игр эта проблема вообще неактуальна, поскольку они либо используют программный PhysX, либо вообще перешли на другие физические движки. Если вы играете в новинки и вам важна максимальная производительность в них, а также самые передовые технологии вроде трассировки лучей, то RTX 5000 – это, конечно, мощный шаг вперед. Все же PhysX — это технология из прошлого.

А что вы думаете об отсутствии поддержки PhysX? Помешает ли вам это обновиться?

И не забывайте поставить лайк и подписаться на нас. Впереди еще много полезной информации!

-5

Видеокарта для 4К — как правильно выбрать

Как узнать, совместима ли видеокарта с вашим ПК