PhysX | |
---|---|
Oficiální logo | |
Typ | Fyzikální motor |
Vývojáři |
Nvidia (současná) NovodeX AG , Meqon Research AB , Ageia (bývalá) |
Klíčový programátor | Manju Hejd |
Hardwarové platformy | Počítače kompatibilní s IBM PC , PlayStation 3 , Xbox 360 , Wii , PlayStation 4 , Xbox One |
Podporovaný OS | Windows , Linux , macOS , Android , iOS |
Licence | BSD-3 |
Nejnovější verze | 21.9.0713 |
developer.nvidia.com/obj… nvidia.com/de-de/ |
PhysX ( MFA: [ˈfɪzɛks] , vyslovováno [physiks]) je middleware ( anglicky middleware ), meziplatformní fyzikální engine pro simulaci řady fyzikálních jevů a také vývojová sada ( SDK ) na něm založená. Původně vyvinutý společností Ageia pro fyzický procesor PhysX . Poté , co Ageia získala společnost nVidia , motor se stal majetkem společnosti nVidia , která pokračuje v dalším vývoji. Nvidia upravila engine pro urychlení fyzikálních výpočtů na svých grafických čipech architektury CUDA . PhysX může také provádět výpočty pomocí konvenčního procesoru . PhysX je aktuálně k dispozici na následujících platformách: Windows , Linux , macOS , Wii , PlayStation 3 , Xbox 360 , PlayStation 4 , Xbox One , Android , iOS (hardwarová akcelerace je možná pouze na platformě Windows ). Engine se používá v mnoha hrách a byl aktivně nabízen k prodeji (licencování) všem, pro různé platformy [1] [2] [3] [4] [5] [6] .
Od 3. prosince 2018 byl zdrojový kód PhysX přelicencován pod open source licencí BSD-3 [7] [8] .
Sub-software PhysX SDK umožňuje vývojářům her vyhnout se psaní vlastního kódu pro zpracování složitých fyzikálních interakcí v dnešních počítačových hrách . 20. července 2005 společnost Sony licencovala PhysX SDK pro použití ve své sedmé generaci konzole videohry PlayStation 3 . [9] PhysX SDK lze použít nejen na Microsoft Windows , ale také na Linuxu , ale podpora procesorů PhysX je zatím dostupná pouze pro Windows.
Na rozdíl od většiny ostatních fyzikálních enginů, které jsou dodávány a instalovány se hrou, je třeba PhysX SDK nainstalovat samostatně. Instaluje se jako samostatný ovladač . Pokud je na počítači nainstalována deska PhysX , pak ovladač PhysX SDK použije její prostředky během provozu. Pokud PhysX chybí, výpočetní úlohy se přenesou na centrální procesor . [deset]
Fyzikální engine PhysX SDK se skládá ze tří hlavních komponent pro zpracování fyziky:
Jakmile je nainstalován ovladač PhysX SDK, můžete si prohlédnout tyto tři součásti motoru v akci.
13. února 2008 NVIDIA získala Ageia , čímž se PhysX SDK stalo vlastnictvím společnosti NVIDIA . [11] Podpora PhysX SDK byla integrována do rámce CUDA , který již obsahuje mnoho ovladačů pro Linux . Potřeba vyhrazeného fyzického procesoru PhysX tedy zmizela. Podpora PhysX SDK je dostupná pro všechny grafické karty Nvidia z řady 8xxx. Fyzikální engine PhysX SDK je nyní známý jako NVIDIA PhysX SDK . [12]
V březnu 2008 Nvidia oznámila, že zpřístupní PhysX SDK otevřený standard pro veřejnost. [13] 24. července 2008 bylo oznámeno, že Nvidia vydá 5. srpna 2008 ovladač ForceWare s certifikací WHQL s podporou akcelerace fyziky . [14] [15]
Kvůli ukončení podpory pro Havok FX byl fyzikální engine PhysX SDK až do roku 2010 jedinou hardwarově akcelerovanou technologií. [16] Další fyzikální engine , Bullet , získal počáteční podporu pro technologii hardwarové akcelerace s OpenCL , díky aktivní podpoře od AMD .
Přestože je PhysX SDK navrženo pro použití v počítačových hrách, lze jej použít i v jiných aplikacích.
15. srpna 2008 vydala NVIDIA ovladač ForceWare 177.83 s podporou PhysX pro grafické karty řady GeForce 8, 9 a 200. To okamžitě rozšířilo uživatelskou základnu na více než 70 milionů lidí po celém světě. [17] [18]
4. března 2015 NVIDIA oznámila dostupnost plných zdrojů PhysX. Kód motoru je dodáván jako součást bezplatného PhysX SDK připraveného pro Windows , Linux , macOS a Android [19]
Dne 28. června 2008 spustil Eran Badit z NGOHQ.com Archived 7. července 2008 na Wayback Machine hardwarovou podporu PhysX SDK na grafické kartě Radeon HD 3870 . [20] NVIDIA zpočátku na iniciativu Erana Badita reagovala negativně s tím, že je to nemožné. Nicméně 9. července 2008 bylo Baditovi nabídnuto, aby se připojil k vývojovému týmu nVidia , otevřel přístup k dokumentaci, SDK , hardwaru a dal kontakty na inženýry. [21] Bylo slíbeno, že upravené ovladače pro karty ATI budou brzy ke stažení. Podle jiných zdrojů zase ATI oficiálně Baditovu iniciativu nepodpořila . [22] Pro psaní oficiálních (neupravených) ovladačů ATI s podporou PhysX nabízí nVidia licencování hardwarové podpory CUDA , která zahrnuje PhysX. Technologie CUDA však konkuruje technologii FireStream společnosti AMD .
V grafických ovladačích nVidia verze 186 je nainstalována schopnost spolupracovat mezi dvěma grafickými kartami, které mají GPU od různých výrobců ( AMD a nVidia ). Pokud tedy dříve bylo možné oddělit výpočty pro různé grafické karty (například karta s procesorem nVidia může počítat herní fyziku a karta s procesorem AMD může vykreslovat obrázky ) , pak od verze 186, pokud GPU od je v systému detekován jiný výrobce (dokonce integrovaný do čipsetu), pak je tato funkce deaktivována. Nová verze enginu PhysX navíc nepodporuje vyhrazené fyzické akcelerátory PhysX (PPU) vyvinuté společností Ageia , pokud je v systému detekován jiný GPU než NVIDIA .
Zástupce nVidia vysvětlil situaci takto:
PhysX je otevřený softwarový standard a každá společnost může volně vyvíjet hardware nebo software, který jej podporuje. NVIDIA podporuje akceleraci fyziky GPU NVIDIA, když se GPU NVIDIA používá také pro grafiku... Z mnoha důvodů - částečně kvůli nákladům na vývoj, částečně kvůli nákladům na testování a částečně z obchodních důvodů NVIDIA nebude podporovat akceleraci fyziky pomocí GPU , pokud grafika zpracování provádí GPU od jiného výrobce.
APEX je doplněk na vysoké úrovni, který NVIDIA hodlá usnadnit začlenění PhysX do herních projektů a urychlit proces vývoje. APEX umožňuje umělcům a designérům vytvářet fyzické efekty s minimálním vstupem do programování. Namísto nízkoúrovňového PhysX API je vývojáři k dispozici sada nástrojů pro vytváření určitých fyzických efektů na základě hotových modulů APEX. Využití těchto modulů je zajištěno integrací frameworku APEX do herních enginů.
Herní enginy , které používají komponenty PhysX SDK jako fyzikální subsystém:
Nvidia | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
GPU ( srovnání ) _ |
| ||||||||||
Čipové sady základní desky ( srovnání ) _ |
| ||||||||||
jiný |
|
Herní motory | |||||||
---|---|---|---|---|---|---|---|
Grafický | Volný, uvolnit GLScene Horde3D Irrlicht OGRE OpenSceneGraph Proprietární Outerra | ||||||
Fyzický | Volný, uvolnit Box2D Kulka Chipmunk newton ÓDA. Tokamak Proprietární DMM Havok fyzika PhysX | ||||||
obecný účel |
| ||||||
Specializované |
| ||||||
Seznam herních enginů |