Может ли карта Ageia PhysX дать в играх реалистичную физику?
Ageia утверждает, что её новая карта обработки физики и движок свершат настоящую революцию в мире игр для ПК. Мы на своём опыте убедились, насколько хорошо Ageia PPU (physics processing unit) справляется с обломками и осколками в игре Ghost Recon Advanced War Fighter. Если вы хотите посмотреть своими глазами, то можете скачать наши видеоролики.
Давайте разберёмся, что собой представляет физический процессор, и что он способен дать играм? Если не вдаваться в подробности, то выделенный физический процессор способен взять на себя все задачи физики, которые раньше обрабатывались CPU. Однако PPU отнюдь не заменяет видеокарту, которая по-прежнему используется для рендеринга кадров. Вместо этого, физический движок симулирует эффекты, которые встречаются в реальном мире, например, гравитационное воздействие и трение.
Итак, как же применение законов физики реального мира может сказаться на геймплее? Например, в GTA San Andreas вес и скорость каждой машины определяются множеством параметров. Эти параметры влияют на то, как быстро машина будет разгоняться, а также на просчёт столкновений двух автомобилей. С помощью специального редактора можно менять эти параметры. После чего тяжёлый военный танк будет двигаться так же быстро, как гоночный болид, а простая детская коляска по своим характеристикам окажется неуклюжим транспортным самолётом.
Мир ролевой игры Oblivion содержит ряд примеров активного использования физики: предметы скатываются на крутых склонах, а тела поверженных врагов плавают на поверхности воды. Если труп немного притопить и отпустить, он всё равно затем всплывёт. Выстрелы из лука вертикально вверх приводят к тому, что стрелы будут падать обратно, иногда попадая в камни, деревья или пеньки.
Сегодня Ageia с помощью своей добавочной карты для шины PCI пытается поднять игровую физику на новый уровень. Карта берёт на себя все физические вычисления в играх, позволяя реализовывать больше эффектов, чем в случае стандартного расчёта физики с помощью CPU.
Карты Ageia PhysX оснащены небольшим вентилятором, 128 Мбайт памяти GDDR3 и предназначены для шины PCI. На них нет никаких внешних разъёмов, а дополнительные кабели тоже не используются.
По информации Ageia, физические процессоры производятся по 130-нм техпроцессу, содержат 125 млн. транзисторов и оснащены 128 Мбайт памяти GDDR3. Кроме более современной технологии памяти (GDDR3 против обычной DDR), спецификации очень близки к nVidia GeForce 5600 Ultra. Подобно видеокарте, компоненты и вентилятор после установки карты в корпус располагаются снизу.
Ageia PhysX против физики nVidia SLI
В последнее время физические движки и их использование в графических приложениях стали горячими темами споров на многочисленных web-форумах. Среди трёх доступных вариантов только карта Ageia PhysX представляет собой выделенное аппаратное решение. Другие опции подразумевают расчёт физики через графические карты nVidia SLI или перенос вычислений в отдельный поток, который будет просчитываться собственным ядром CPU.
При цене $299 карту Ageia нельзя назвать дешёвой. Впрочем, энтузиасты и хардкорные геймеры всегда готовы доплатить за передовое “железо”, но реальная ценность карты Ageia в играх пока не так очевидна. Современные видеокарты поддерживают HDR-рендеринг и эффекты пиксельных шейдеров, преимущества которых можно легко увидеть на многочисленных скриншотах, опубликованных в Интернете. Но вот с преимуществами выделенной физической карты Ageia всё уже не так очевидно.
Сегодня слишком мало реальных приложений и демонстраций, которые смогли бы показать все возможности ускорителя физики Ageia. А скриншоты на web-сайте компании вряд ли способны убедить всех скептиков. Впрочем, игра Ghost Recon Advanced War Fighter, первая поддержавшая PhysX на рынке, и это только начало. Но до тех пор, пока не появится большое количество игр с поддержкой PhysX, цена подобного решения будет отпугивать большинство потенциальных покупателей.
С другой стороны, с объявлением драйверов nVidia Forceware 90 жизнь для Ageia усложнилась: они позволяют использовать вторую карту в конфигурации SLI для физических расчётов (физический движок Havok FX). Впрочем, если метод Ageia заключается в полном переносе задач просчёта на PPU, то подход nVidia SLI предполагает лишь вывод визуальных физических эффектов. Звучит не очень внятно, тем более что у каждого подхода есть свои огрехи. Начнём с Ageia. В игре Ghost Recon персонаж не может взаимодействовать абсолютно со всеми объектами. А дополнительные обломки и осколки, которые аппаратно просчитываются Ageia, после взрыва быстро исчезают. Что же касается nVidia, то для тестов физики в конфигурации SLI следует дождаться нового драйвера Forceware 90. По слухам, он появится только в конце июля. И лишь тогда мы сможем оценить, даёт ли какие-либо преимущества решение nVidia на практике. Кроме того, пока непонятно, заработает ли решение nVidia с играми на движках Havok FX или геймерам придётся скачивать специальные патчи.
В любом случае, прямое сравнение двух решений делать сложно, да и может получиться так, что игр, одновременно поддерживающих Ageia и nVidia, просто не будет. Если Ageia использует собственный движок PhysX, то nVidia выбрала Havok FX, который работает в играх Oblivion, Half Life 2 и Max Payne 2. А движок Ageia доступен пока только в игре Ghost Recon Advanced Warfighter. Ещё во время установки игра настаивает на инсталляции драйвера Ageia, независимо от того, есть карта PhysX в системе или нет. В диалоговом окне присутствует только клавиша подтверждения, так что прервать установку драйвера нет никакой возможности. Будущее покажет, насколько совместимыми окажутся технологии PhysX и Havok FX. Впрочем, вряд ли разработчики игр пожелают платить лицензионные отчисления за использования обоих движков.
Третий подход, упомянутый нами, заключается в переносе просчёта физики на отдельное ядро. Сегодня по этому поводу мнения разнятся. Некоторые специалисты утверждают, что второе ядро двуядерного процессора не сможет справиться с просчётом физики, либо физические вычисления на универсальном ядре будут проходить намного медленнее, чем на специализированном чипе (типа Ageia PPU). Впрочем, мы относимся к этому мнению скептически. Игры типа Oblivion и Half-Life 2 наглядно доказывают, что программная реализация просчёта физики на CPU вполне способна дать первоклассные физические эффекты. Да и на горизонте уже маячат четырёхядерные процессоры. А зачем нужно такое количество ядер, если расчётом физики будет заниматься специализированный PPU?
Установка карты PhysX
Карта устанавливается в свободный слот PCI. Как мы уже упоминали выше, во время установки игры Ghost Recon Advanced Warfighter инсталлируется версия драйвера 2.3.3 карты Ageia. После установки в трее появляется дополнительный значок, обеспечивающий быстрый доступ к настройкам Ageia.
Как только драйвер распознает карту PhysX, её можно сбросить или провести диагностику.
Драйвер использует встроенную функцию обновления с сайта www.ageia.com.
Web-сайт доступен только на английском языке. Мы скачали и установили версию драйвера 2.4.3.
Как можно видеть по информационной панели драйвера, в системе осталась и старая версия движка PhysX.
Небольшой вентилятор карты, подсвеченный голубыми светодиодами, во время работы практически не слышен. Поскольку карта по дизайну напоминает модели AGP, то компоненты после установки в корпус находятся снизу. Во второй тестовой конфигурации карта Ageia монтировалась вертикально, при этом вентилятор неприятно загудел.
Производительность и энергопотребление
Конечно, сразу возникает большой вопрос: действительно ли карта Ageia снимает с CPU физические расчёты? Ответ: и да, и нет. После установки карты PhysX в игре Ghost Recon Advanced Warfighter появляется больше деталей. Они рассчитываются PPU и не создают дополнительной нагрузки на CPU. Впрочем, есть и недостаток: детали просчитываются видеокартой, что увеличивает нагрузку на неё (графическая производительность падает, хотя и незначительно). В общем, большее число деталей означает меньшую частоту кадров. Чтобы определить влияние физических расчётов карты Ageia на производительность (позитивное или негативное), мы провели тесты на двух платформах. В обоих случаях падение производительности оказалось минимальным.
Ниже приведены результаты теста производительности карты Ageia PhysX в игре Ghost Recon Advanced Warfighter (1024×768, максимальное качество).
Intel 2,4 ГГц, GeForce 6800 GT | Средние fps | Минимальные fps | Максимальные fps |
С картой PhysX | 17,3 fps | 11 fps | 20 fps |
Без карты PhysX | 17,7 fps | 14 fps | 20 fps |
Intel Dual Core 3,1 ГГц, Radeon 1900 XTX | Средние fps | Минимальные fps | Максимальные fps |
С картой PhysX | 55,7 fps | 42 fps | 67 fps |
Без карты PhysX | 58,3 fps | 49 fps | 67 fps |
Энергопотребление карты Ageia измерялось в самой мощной системе на основе двуядерного процессора Intel и видеокарты Radeon X1900 XTX. Карта увеличила общее энергопотребление системы (без монитора) на 40 Вт. Измерения отображают пиковые значения.
Таблица энергопотребления карты Ageia PhysX.
Intel Dual Core 3,1 ГГц, Radeon 1900 XTX | 2D: Windows | 3D: шутер |
С картой PhysX | 185 Вт | 390 Вт |
Без карты PhysX | 146 Вт | 350 Вт |
Карта PhysX против программного просчёта физики
Второй важный вопрос: какие отличия карта вносит в геймплей? Чтобы ответить на него, мы провели тесты на игре Ghost Recon Advanced Warfighter. Мы решили ограничить тесты реальными условиями, то есть установили игру в таком виде, в каком её можно купить в магазине: без патчей или доработок. После выхода других игр с поддержкой движка PhysX (Sacred II, Unreal 2007, Monster Madness и т.д.) мы выпустим дополнение этой статьи.
Без аппаратного ускорения физики шина на земле частично исчезает. Подобная ошибка перекрывания объектов знакома нам ещё со времён первого Tomb Raider 1. В современных играх она, на наш взгляд, недопустима.
Хотя объекты вроде шин и дверей можно передвигать выстрелами из оружия, напрямую управлять ими нельзя. Без аппаратного ускорения физики игрок просто пробегает сквозь них, как будто объектов не существует.
Без аппаратного ускорения физики 3D-движок игры совсем не впечатляет. Скажем, шины припаркованных машин “проваливаются” в асфальт.
Проблема не исчезает и после установки карты Ageia. Уничтоженные машины по-прежнему “проваливаются”.
Карта Ageia PhysX не решает и проблем пересечения объектов. Дверцы и покрышки всё так же могут проходить сквозь друг друга. Движущиеся объекты по-прежнему не считаются материальными. Несмотря на аппаратную поддержку физики PhysX, игрок может, как и прежде, проходить сквозь объекты.
Крышка мусорного бачка отлетает при малейшем взрыве. Но она по-прежнему не является физическим препятствием для игрока даже после установки карты PhysX.
Карта Ageia отвечает и за все подвижные объекты. По какой-то причине они считаются очень тяжёлыми. Как мы видим, вырванная взрывом дверь продолжает стоять вертикально и не падает. То же самое касается покрышек. Они часто встают в очень неестественные положения.
Наверное, самым важным эффектом, который карта PhysX добавляет в игры, можно считать просчёт веса игровых объектов типа дверей автомобилей и покрышек. Они более реалистично реагируют на удары пуль. Но карта не предотвращает появление ошибок взаимного перекрытия объектов. Покрышки почти всегда частично исчезают в земле после взрыва гранаты, как при установленной карте PhysX, так и без неё. В целом, похоже, движок PhysX и аппаратное ускорение PhysX работают пока не в чёткой гармонии.
Карта Ageia в действии
Физический ускоритель PhysX хорошо себя проявляет при выводе обломков, осколков и искр. Поскольку разница видна, прежде всего, в динамике, мы решили выложить несколько видеороликов. Они записаны в разрешении 1024×768 и закодированы с помощью Xvid.
Ролик 1 без карты Ageia.
Ролик 1 с картой Ageia
После взрывов заметно больше обломков. Но они всё равно довольно быстро исчезают.
Ролик 2 без карты Ageia.
Ролик 2 с картой Ageia
Карта PhysX даёт большее число дымящихся обломков. В конце взрыв дополняется буквально дождём обломков.
Ролик 3 без карты Ageia.
Ролик 3 с картой Ageia
Выстрел в дерево: щепки летят.
Ролик 4 без карты Ageia.
Ролик 4 с картой Ageia
Поддержка аппаратного просчёта физики приводит к отлёту большего числа осколков от асфальта. Да и дымок лучше прорисовывается. После удара пуль появляются искры. С картой Ageia они пролетают дальше, отлетают от асфальта и медленно гаснут.
Карта Ageia в сетевой игре
Физический движок показал себя весьма странно в сетевой игре. Например, при взрыве гранаты, когда на воздух взлетает несколько машин. Но как же всё это видит другой игрок, без ускорителя PhysX?
Ролик 5 с картой Ageia
Первый ролик снят на компьютере с картой PhysX. Мы запустили Ghost Recon Advanced Warfighter в сетевом режиме. Затем взорвали две машины с помощью гранаты. Машины взлетели на воздух, после чего упали на землю.
Ролик 5 на компьютере без карты Ageia
На втором ролике геймер с картой PhysX вновь бросает гранату. Видео снято со стороны игрока без карты. Машины можно забросать гранатами, но они уже не взлетают. Если игрок с картой PhysX наблюдает дополнительные обломки, то без карты Ageia их уже не видно.
Ролик 5 без карты Ageia
В третьем ролике геймер без физического ускорителя стоит в том же месте, где в предыдущих роликах находился игрок с картой PhysX. Последний находится в другом месте, за пределом видимости геймера. На этот раз взрыв даёт отдачу, машины переворачиваются даже на компьютере без физического ускорителя.
Как показывают наши ролики, для переворачивания машин физический ускоритель вовсе не нужен. Но как только в поле зрения появляется второй игрок с ускорителем, машины почему-то стоят на месте, как вкопанные. Взрыв на них не действует. Возможно, таким способом программисты хотели избежать каких-то конфликтов. Но, вообще, весьма странно наблюдать, как один игрок видит действие взрыва, а другой – нет.
Показанная ситуация хорошо демонстрирует слабости физического движка, так как переворот машин идеально подходит для просчёта с помощью PPU. Но поскольку машины рассматриваются как материальные тела, программисты решили забыть про красочные траектории, реализовав в многопользовательском окружении только определение столкновений. Поэтому карта Ageia ограничена расчётом лишь физических осколков и щепок, которые с точки зрения игрока не являются материальными телами.
Есть ещё один негативный эффект физического ускорителя: синхронность событий теряется. Между событием на двух компьютерах появляется заметная задержка. Когда геймер на машине без физического ускорителя слышит взрыв, то игрок на машине с картой Ageia – ещё нет.
Заключение
Игра Ghost Recon Advanced Warfighter на данный момент единственная поддерживает физический движок PhysX. Надо сказать, она делает новой технологии физического ускорения Ageia не слишком хорошую рекламу. Физические эффекты пока реализованы слишком неоднозначно. Проблемы особенно явно ощущаются в сетевой игре, когда в поле зрения попадают геймеры, чьи компьютеры не укомплектованы картой PhysX. Подобные ситуации как раз характерны для онлайновых игр.
Поскольку дополнительный физический процессор не является обязательным атрибутом для игр, Ageia следует приложить немало усилий, чтобы карта давала большее число эффектов и поддерживалась большим числом игр. Пока же эффекты карты отнюдь не “сносят крышу”. Что, согласитесь, не помешало бы скорейшему распространению карт PhysX. Приведём фразу некоторых зрителей: “что, и это всё?”
Кроме того, сегодня отсутствует набор патчей для игр, которые бы включали поддержку PhysX. Поскольку технология новая, подобный шаг на момент выхода не помешал бы. Короткий лист будущих игр с поддержкой PhysX тоже не впечатляет. Даже у первого 3D-ускорителя 3dfx Voodoo список был внушительнее, что не помешало этой компании исчезнуть с рынка.
В целом, карте с новой технологией не мешает выходить не только в варианте PCI, но и PCI Express. Да и цену в $299 нельзя назвать маленькой. GeForce 5600 Ultra с похожими спецификациями стоит всего около $100. Если Ageia желает сделать карту популярнее, цену необходимо существенно снизить.
С нынешней точки зрения физический движок Havok FX имеет большие шансы на широкое внедрение, чем Ageia PhysX. Объявление nVidia об аппаратной поддержке движка Havok в будущих версиях драйверов определённо говорит в его пользу. Не будем забывать, что движок Havok FX сегодня используют такие популярные игры, как Oblivion и Half-Life 2. Ageia следует достичь такой же степени популярности на рынке. Иначе компания получит репутацию бета-проекта. Тогда покупатели просто решат обождать, пока список совместимых игр не увеличится. В любом случае, две несовместимые друг с другом технологии нам вряд ли нужны.