PhysX (движок)

PhysX (движок)
PhysX
Физический движок
PhysX.svg
Официальный логотип
Разработчики nVidia (текущий)
NovodeX AG, Meqon Research AB, Ageia (бывшие)
Ключевой программист Манджу Хежд
Аппаратные платформы IBM PC-совместимые компьютеры, PlayStation 3, Xbox 360, Wii
Поддерживаемые ОС Windows, Linux, Mac OS X
Лицензия коммерческая — доступен для лицензирования
Последняя версия 9.10.0514 / 25 октября 2010 года
Последняя игра на движке Switchball / 26 июня 2007 года
Страница PhysX

PhysX (произносится «физикс») — проприетарное подпрограммное обеспечение (англ. middleware), кроссплатформенный физический движок для симуляции ряда физических явлений, а также комплект средств разработки (SDK) на его основе. Первоначально разрабатывался компанией Ageia для своего физического процессора PhysX. После того, как Ageia была приобретена nVidia, движок перешёл в собственность компании nVidia, которая продолжает его дальнейшую разработку. nVidia адаптировала движок для ускорения физических расчётов на своих графических чипах с архитектурой CUDA. PhysX может также производить вычисления с использованием обычного процессора. В настоящее время PhysX доступен на следующих платформах: Windows, Linux, Mac OS X, Wii, PlayStation 3, Xbox 360 (аппаратное ускорение возможно только на платформе Windows). Движок используется во многих играх и активно предлагается для продажи (лицензирования) всем желающим.

Содержание

Описание

Окно выбора метода ускорения NVIDIA PhysX

Подпрограммное обеспечение PhysX SDK позволяет разработчикам игр избегать написания собственного программного кода для обработки сложных физических взаимодействий в современных компьютерных играх. 20 июля 2005 года компания Sony лицензировала PhysX SDK для использования в своей игровой приставке седьмого поколения PlayStation 3.[1] PhysX SDK может использоваться не только в среде Microsoft Windows, но также и в Linux, однако поддержка процессора PhysX пока работает только для Windows.

В отличие от большинства других физических движков, которые поставляются и устанавливаются вместе с игрой, PhysX SDK необходимо установить отдельно. Он устанавливается как отдельный драйвер. Если на компьютере установлена плата PhysX, то драйвер PhysX SDK при работе будет использовать её ресурсы. Если же PhysX отсутствует, то вычислительные задачи будут переноситься на центральный процессор.[2]

Физический движок PhysX SDK состоит из трёх главных компонентов по обработке физики:

  • обработка твёрдых тел (англ. rigid body);
  • обработка тканей (англ. cloth);
  • обработка жидкостей (англ. fluid);

После установки драйвера PhysX SDK присутствует возможность просмотреть работу этих трёх компонентов движка в действии.

13 февраля 2008 года компания NVIDIA приобрела Ageia, в результате чего PhysX SDK стал собственностью NVIDIA.[3] Поддержка PhysX SDK была интегрирована в структуру CUDA, для которой уже есть множество драйверов под Linux. Таким образом, необходимость в выделенном физическом процессоре PhysX пропала. Поддержка PhysX SDK доступна для всех видеокарт производства Nvidia, начиная с серии 8ххх. Физический движок PhysX SDK теперь известен как NVIDIA PhysX SDK.[4]

В марте 2008 года Nvidia заявила, что сделает PhysX SDK открытым стандартом, доступным для всех желающих.[5] 24 июля 2008 года стало известно, что Nvidia выпустит WHQL-сертифицированный драйвер ForceWare с поддержкой ускорения физики 5 августа 2008 года.[6] [7]

В связи с отменой Havok FX физический движок PhysX SDK является на данный момент единственной технологией с поддержкой аппаратного ускорения.[8]

Хотя PhysX SDK разработан для использования в компьютерных играх, он может быть применён и в других приложениях.

15 августа 2008 года компания NVIDIA выпустила драйвер ForceWare 177.83, который активирует поддержку PhysX в видеокартах серий 8, 9 и 200. Это немедленно расширило пользовательскую базу до более чем 70 миллионов человек во всем мире.[9] [10]

5 декабря 2008 года компания NVIDIA выложила программный пакет «PhysX pack 2», который расширяет список игр с поддержкой продвинутой физики. Этот пакет распространяется бесплатно и занимает 3,5 Гб. В состав пакета входят логическая головоломка Crazy Machines 2, демо-сцена обработки частиц Dark Basic Fluids Demo, демо-сцена работы с мягкими телами Dark Basic PhysX Soft Body Demo и два новых уровня для сетевой игры Warmonger.[11]

15 декабря 2008 года директор AMD по техническому маркетингу Годфри Чен (англ. Godfrey Cheng) заявил, что физический движок NVIDIA PhysX обречен на смерть, как и любая закрытая технология.[12]

22 декабря 2008 года появилась новость о том, что издатель компьютерных игр компания THQ совместно с компанией NVIDIA подписали соглашения о применении технологии NVIDIA PhysX в компьютерных играх, которые будет издавать THQ.[13]

17 марта 2009 года компания NVIDIA опубликовала пресс-релиз, в котором сообщила о заключении договора с японской транснациональной корпорацией Sony о предоставлении инструментария и соответствующего программного обеспечения PhysX разработчикам игр для игровой приставки PlayStation 3. Таким образом все зарегистрированные разработчики, которые имеют официальную лицензию и право создавать игры для PS3, смогут бесплатно получить доступ к полному набору инструментальных средств технологии NVIDIA PhysX, включающий библиотеки, заголовочные файлы, help-файлы, документацию и т. п.[14][15][16]

20 марта 2009 года компания NVIDIA подтвердила, что для всех зарегистрированных разработчиков игр для приставки Nintendo Wii будет бесплатно предоставлен инструментарий PhysX.[17][18]

26 марта 2009 года появилась новость о том, что в онлайновом магазине компании Apple — App Store продаются несколько игр для iPhone с поддержкой PhysX: Big Fun Racing, Space Race и Debris.[19]

Возможность запуска PhysX при сторонних GPU

28 июня 2008 года Эран Бадит (англ. Eran Badit), участник ресурса NGOHQ.com, запустил аппаратную поддержку PhysX SDK на видеокарте Radeon HD 3870.[20] Вначале компания NVIDIA отреагировала на инициативу Эрана Бэдита негативно, заявив, что это невозможно. Однако 9 июля 2008 года Бэдиту предложили вступить в команду разработчиков nVidia, открыли доступ к документации, SDK, аппаратному обеспечению и дали контакты инженеров.[21] Было обещано, что модифицированные драйверы для карт ATI скоро станут доступны для загрузки. По другим данным в свою очередь компания ATI официально не поддержала инициативу Бэдита.[22] Для написания официальных (не модифицированных) драйверов ATI с поддержкой PhysX компания nVidia предлагает лицензировать аппаратную поддержку CUDA, которая включает в себя PhysX. Однако технология CUDA конкурирует с технологией AMD FireStream.

В графических драйверах nVidia версии 186 была заблокирована возможность совместной работы двух графических карт, на которые установлены графические процессоры от разных производителей (AMD и nVidia). Таким образом, если раньше была возможность разделения вычислений по разным графическим картам (например, карта с процессором nVidia может рассчитывать игровую физику, а карта с процессором AMD — заниматься рендерингом изображения), то с версии 186, если в системе обнаружен GPU другого производителя (даже интегрированный в чипсет), то эта возможность блокируется. Кроме того, движок PhysX новой версии не поддерживает специализированные физические ускорители (PPU) PhysX, разработанные ещё Ageia, если в системе обнаружен GPU, выпущенный не NVIDIA.

Представитель nVidia объяснил эту ситуацию следующим образом:

« PhysX является открытым программным стандартом, и любая компания может свободно разрабатывать поддерживающее его аппаратное или программное обеспечение. NVIDIA поддерживает ускорение физических расчетов силами GPU NVIDIA, когда GPU NVIDIA используется и для графики... По многим причинам — частично из-за затрат на разработку, частично из-за затрат на тестирование и частично по деловым мотивам NVIDIA не будет поддерживать ускорение физических расчетов силами GPU, если графическая обработка выполняется GPU другого производителя. »

В начале октября 2009 года стало известно, что участник форума NGOHQ.com под псевдонимом GenL создал бета-версию программного «патча» для драйверов nVidia. Данный неофициальный патч перехватывает и отменяет блокировку работы PhysX, если в системе обнаружен GPU от AMD. На данном этапе работы патч «исправляет» ситуацию только в случае с GPU; поддержка PPU ещё отсутствует. Однако разработчик патча сообщил о продолжении работы над ним.[23][24]

APEX PhysX

APEX - это высокоуровневая надстройка, которая по замыслу NVIDIA должна упростить внедрение PhysX в игровые проекты и ускорить процесс разработки. APEX позволяет художникам и дизайнерам создавать физические эффекты при минимальном участии программистов. Вместо низкоуровневого API PhysX, разработчику предоставляется набор инструментов для создания определенных физических эффектов на базе готовых APEX-модулей. Использование этих модулей обеспечивается интеграцией фреймвока APEX в игровые движки.[25]

Игры, использующие PhysX

Следующие игры используют физический движок PhysX и могут использовать либо физический процессор PhysX, либо графические процессоры GeForce:[26] [27] [28]

Название игры Жанр игры Дата выхода (ПК-версия) Разработчик
2 Days to Vegas Adventure в разработке Steel Monkeys
Age of Empires III RTS 18 октября 2005 Ensemble Studios
Age of Empires III: The WarChiefs RTS 17 октября 2006 Ensemble Studios
Alice: Madness Returns Action 14 июня 2011 Spicy Horse
Alpha Prime FPS 25 мая 2007 Black Element Software
Auto Assault MMORACING Net Devil
Backbreaker Fighting Natural Motion
Batman: Arkham Asylum[29] Action-adventure, Стелс-экшен 28 августа 2009 Rocksteady Studios
B.A.S.E. Jumping Симулятор бейсджампинга 10 мая 2007 Digital Dimension Development
Bet on Soldier: Blackout Saigon FPS Kylotonn Entertainment
Bet on Soldier: Blood of Sahara FPS Kylotonn Entertainment
Bet on Soldier: Blood Sport FPS Kylotonn Entertainment
Beowulf: The Game Slasher 6 декабря 2007 Ubisoft
Bionic Commando 19 мая 2009 GRIN
Bladestorm: The Hundred Years' War Action 2 ноября 2007 Omega Force
Brothers in Arms: Hell's Highway FPS 7 ноября 2008 Gearbox Software
Cellfactor: Combat Training FPS Artifical Studios, Immersion Games
Cellfactor: Revolution FPS Artifical Studios, Immersion Games
City of Villains MMORPG Cryptic Studios
Crazy Machines 2 FAKT Software
Dark Void TPS 19 февраля 2010 Airtight Games
Desert Diner Tarsier Studios
Dragon Age: Origins RPG 5 ноября 2009 BioWare
Dragonshard
Empire Above All
Empire Earth III RTS
Entropia Universe Social-MMO
EVE-Online MMORPG
Fallen Earth MMORPG
Frozen Systems
Fury MMORPG
Gears Of War TPS 9 ноября 2007 Epic Games, People Can Fly
Gluk'Oza: Action
GooBall
Gothic 3 RPG 13 октября 2006 Piranha Bytes
Gunship Apocalypse
Hero’s Journey
Homefront FPS
Hour of Victory FPS
Huxley
Infernal TPS
Joint Task Force
Jericho
Kuma\WAR
Lost: Via Domus TPS, Adventure
Magic ball 3
Mafia II TPS 24 августа 2010 2K Czech
Mass Effect RPG 6 июня 2008 BioWare
Mass Effect 2 RPG 26 января 2010 BioWare
Medal of Honor: Airborne FPS 4 сентября 2007 Electronic Arts
Metro 2033: The Last Refuge FPS 16 марта 2010 4A Games
Mirror's Edge FPS, Adventure 12 ноября 2008 DICE
Mobile Suit Gundam: Crossfire
Monster Madness: Battle for Suburbia
Monster Truck Maniax
Myst Online: Uru Live MMO-квест
Open Fire
Pirates of the Burning Sea
Rail Simulator
Red Steel
Rise Of Nations: Rise Of Legends
Risen RPG 02 октября 2009 Piranha Bytes
Robert Ludlum's The Bourne Conspiracy
Roboblitz
Sacred 2: Fallen Angel RPG 10 октября 2008 Ascaron Entertainment
Shattered Horizon FPS 4 ноября 2009 Futuremark Games Studio
Sherlock Holmes: The Awakened
Sherlock Holmes versus Arsène Lupin
Showdown: Scorpion
Silverfall[30] RPG 18 апреля 2007 Kyiv Games
Sovereign Symphony
Sonic and the Secret Rings
Speedball 2
Stoked Rider: Alaska Alien
Switchball
Tank Killer
Terminator Salvation TPS 19 мая 2009 года GRIN
The Hunt| 3D-шутер от первого лица Orion Games
«Метро-2»|«Метро-2: Смерть вождя» 3D-шутер от первого лица Orion Games
Tom Clancy's Ghost Recon Advanced Warfighter 3D-шутер от первого лица, тактический шутер 5 мая 2006 года GRIN
Tom Clancy's Ghost Recon Advanced Warfighter 2 3D-шутер от первого лица, тактический шутер 12 июля 2007 года GRIN
Tom Clancy's Rainbow Six: Vegas 3D-шутер от первого лица, тактический шутер 12 декабря 2006 года Ubisoft Montreal
Tom Clancy's Rainbow Six: Vegas 2 3D-шутер от первого лица, TPS, тактический шутер 11 апреля 2008 года Ubisoft Montreal
Tom Clancy's Splinter Cell: Double Agent Стелс-экшен
Tortuga: Two Treasures
Trine платформер
Two Worlds RPG Reality Pump
Two Worlds II RPG 12 ноября 2010 Reality Pump
Ultra Tubes
Unreal Tournament 3 FPS 12 ноября 2007 Epic Games
Warfare RTS
Warmonger: Operation Downtown Destruction
W.E.L.L. Online MMORPG
Winterheart’s Guild
WorldShift RTS Black Sea Studios
Адреналин 2: Час Пик Racing Gaijin Entertainment
Анабиоз: Сон Разума[31] FPS-Horror Action Forms
Империя превыше всего
Капитан Блад Slasher 1С: Морской волк
Морской охотник (игра) Симулятор кораблей 30 января 2009 Акелла
Обитаемый Остров: Чужой Среди Чужих FPS Orion games
Параграф 78 FPS
Пираты XXI Века TPS
Территория тьмы|Dusk 12 FPS Orion games
Тургор[32] Survival adventure 17 апреля 2008 Ice-pick Lodge

Так как Unreal Engine 3[33] использует физический движок PhysX SDK, то все игры (за исключением Stranglehold и Bioshock) разрабатываемые на этом движке, поддерживают ускорение физики через PhysX PPU.

Sacred 2 поддерживает PhysX только начиная с патча 2.40

Игровые движки

Игровые движки, использующие в качестве физической компоненты PhysX SDK:

Примечания

  1. Sony Computer Entertainment, Inc. (21 июля 2005 года). Sony Computer Entertainment Enters Into Strategic Licensing Agreement With AGEIA (in en). Пресс-релиз. Проверено 23 августа 2006.
  2. PhysX For CUDA, Linux Support A Given?  (англ.). phoronix.com. Проверено 14 февраля 2008.
  3. NVIDIA Completes Acquisition of AGEIA Technologies: Financial News — Yahoo! Finance
  4. Александр Шеметов Кто лучше "ускоряет физику", GeForce 9500 GT или Core 2 Extreme QX9770?. 3DNews (4 августа 2008 года). Проверено 4 августа 2008.
  5. Nvidia offers PhysX support to AMD / ATI
  6. Павел "xAnder" Шубский WHQL-драйвер NVIDIA для PhysX – в начале августа. Игромания (24 июля 2008 года). Проверено 27 июля 2008.
  7. Александр Шеметов Новые драйверы NVIDIA PhysX: прирост около 25% в 3DMark Vantage. 3DNews (23 июня 2008 года). Проверено 4 августа 2008.
  8. Shilov, Anton GPU Physics Dead for Now, Says AMD’s Developer Relations Chief. Nvidia’s Chief Exec Predicts “Negative Synergies” with Intel’s Acquisition of Havok. Xbit Laboratories (19 ноября 2007 года). Проверено 26 ноября 2007.
  9. NVIDIA выпустила драйвер для аппаратной поддержки PhysX. GameDev.ru (15 августа 2008). Проверено 27 октября 2008 года.
  10. Винни - начальник технического обслуживания европейского подразделения компании XFX. Почти бесплатная физика. RusDoc.ru (14 октября 2008 года). Проверено 19 октября 2008.
  11. Павел "xAnder" Шубский Новый пак NVIDIA PhysX. Игромания (5 декабря 2008 года). Проверено 5 декабря 2008.
  12. Павел "xAnder" Шубский AMD считает, что PhysX не выживет на рынке. Игромания (15 декабря 2008 года). Проверено 16 декабря 2008.
  13. Роман Епишин THQ голосует за физику. Игромания (22 декабря 2008 года). Проверено 23 декабря 2008.
  14. Павел Шубский PlayStation 3 получит PhysX. Игромания (18 марта 2009 года). Проверено 18 марта 2009.
  15. PhysX для PS3-игр. GameTech (18 марта 2009 года). Проверено 18 марта 2009.
  16. Александр Будик NVIDIA PhysX появится на Sony PS3. 3DNews (18 марта 2009 года). Проверено 25 марта 2009.
  17. Евгений Курочкин NVIDIA PhysX теперь и на Wii. Страна Игр (20 марта 2009 года). Проверено 21 марта 2009.
  18. Александр Шеметов Nintendo говорит "да" NVIDIA PhysX. 3DNews (21 марта 2009 года). Проверено 25 марта 2009.
  19. Александр Шеметов PhysX теперь и в iPhone. 3DNews (26 марта 2009 года). Проверено 26 марта 2009.
  20. BlackCat PhysX взломан и больше не является эксклюзивом для карт NVIDIA. IXBT.com (Суббота, 28 июня 2008 года). Проверено 9 июля 2008.
  21. Павел "xAnder" Шубский NVIDIA откроет поддержку PhysX для ATI Radeon?. Игромания (9 июля 2008 года). Проверено 9 июля 2008.
  22. Взломщика драйверов nVidia пригласила на работу... компания nVidia. Tom's Hardware (9 июля 2008 года). Проверено 13 июня 2009.
  23. Accent Найден способ включить поддержку PhysX в системах с GPU AMD. iXBT.com (5 октября 2009 года). Проверено 5 октября 2009.
  24. Alexei R. aka Sonik Способ включить поддержку PhysX в системах с видеокартами AMD есть!. PlayGround.ru (5 октября 2009 года). Проверено 5 октября 2009.
  25. Новая технология NVIDIA APEX ускоряет конвейер создания физики для разработчиков контента. официальный русскоязыный сайт nVidia (25 марта 2009 года). Проверено 13 декабря 2010.
  26. PhysX Games List  (англ.). nzone.com. — Список игр, использующих технологию PhysX SDK. В списке приведены не все игры. Проверено 23 декабря 2008.
  27. Featured PhysX Titles  (англ.). nVidia (17 июля 2008 года). — Список игр, использующих технологию PhysX SDK, на официальном сайте компании nVidia. Проверено 24 декабря 2008.
  28. Projects using PhysX SDK  (англ.) (23 декабря 2008 года). — Сайт, созданный специально для учета игр, поддерживающих PhysX SDK. Проверено 24 декабря 2008.
  29. Batman: Arkham Asylum to Support NVIDIA PhysX technology  (англ.). IGN (August 6, 2009).
  30. Silverfall. Акелла. Проверено 21 декабря 2008.
  31. Александр Шеметов "Физическое" тестирование видеокарт в игре "Анабиоз: Сон разума". 3DNews (21 декабря 2008 года). Проверено 21 декабря 2008.
  32. Тургор - Об Игре. Официальный сайт игры. Проверено 21 декабря 2008.
  33. Unreal Engine 3

См. также

Ссылки

  • NVIDIA PhysX (рус.) — страница PhysX на официальном сайте nVidia
  • PhysXInfo.com (англ.) — крупнейший веб-сайт, посвящённый технологии PhysX
  • Ageia PhysX Drivers — страница со списком всех драйверов, выпущенных Ageia для игровых ускорителей физических расчетов Ageia PhysX
Отдельные статьи