Hlavní stránka Hardware Grafické karty Zamyšlení nad budoucností PhysX
Zamyšlení nad budoucností PhysX
autor: Václav Vlček , publikováno 17.10.2009
Zamyšlení nad budoucností PhysX

Na diskuzních fórech všech technických webů se v poslední době vedou vášnivé diskuze a spory o tom, jak moc je vlastně hardwarově akcelerovaná fyzika PhysX přínosem pro hráče a nebo naopak jsou přidané efekty zbytečné. Aktuální situace je díky jednostranné podpoře PhysX celkem nepříjemná pro majitele ATI, bude to v časem lepší?


Všechno tohle ale stojí a padá hlavně na tom nejpodstatnějším, PhysX pro CPU. Ten díky jeho vstřícné licenční politice (zdarma pro PC, platí se jenom za konzolovou verzi) otevřel Nvidii cestu k velkým herním vývojářům i malým programátorům. Ať se to někomu líbí nebo ne, najdete dneska PhysX ve velké části herních titulů. Přeci jenom cena je vždycky až na prvním místě. A platí to zvláště v dnešní době, kdy se šetří každou korunou, dolarem nebo eurem. Ani ty největší vývojářská studia si nemůžou dovolit vyhazovat peníze jen tak. Pochopitelně nějakou roli hraje tzv. learning curve, tedy v tomhle případě doba, za jakou se vývojáři naučí pracovat a používat nový PhysX SDK. Po tu dobu by pochopitelně mohli nadále programovat a vyvíjet něco konkrétního v existujícím fyzikálním engine (Havok v případě velkých studií). Ale cena PhysX je lákavá a tak se jeho využití z dlouhodobého horizontu studiím vyplatí, zvláště když vezmeme v úvahu fakt, že dnes nabízí už lepší efekty a více funkcí než starší Havok. Navíc nové rozhraní APEX (tak se nazývá GUI PhysX) je podle všeho velice dobře optimalizované a usnadňuje vývojářům práci, kde jenom to jde.

Demonstrace fyziky ve hře Batman Arkham Asylum

A samozřejmě také má hardwarovou akceleraci. Ta je dneska braná spíše jako takový bonbónek navíc a pokud jí vývojáři do her implementují, musejí prostě počítat s tím, že na části obecně používaného hardware nebude fungovat. Na druhou stranu ale díky tomu získají efekty, které prostě jinak vytvořit na dnešním hardware nedokážou. V každém případě ale musí najednou optimalizovat hru pro dvě úplně odlišné platformy – s akcelerací a bez, nebo chcete-li Nvidia a ATI. Celkem pochopitelně tomu se vývojáři brání, stačí že musí pracovat na hře samotné a ještě aby si přidělávali práci. Už tak mají v naprosté většině případu vražedné termíny. Proto se také Nvidia musí angažovat v propagaci a pomáhat vývojářům, jinak by prostě nevzniklo ani to málo co je.

Na druhou stranu podle ohlášené podpory PhysX a také chystaných titulů s podporou hardwarové akcelerace je vidět, že vývojáři se chápou nabízené možnosti a snaží se do svých her přidat v podstatě next-gen efekty už dnes. Tím pochopitelně hrají do karet Nvidii, protože využíváním jejich PhysX engine pro CPU i GPU, který je zadarmo a s nevídanou podporou, zároveň vzniká základna programátorů zvyklých používat PhysX. Což dostává PhysX do pozice Havoku před pár lety, prostě ho bude používat každý a pro vývojáře bude brán jako základ. A jestli přijde konkurence, bude se muset hodně snažit a investovat enormní sumy podobně jako Nvidia dneska.

Zamyšlení nad budoucností PhysX
První AAA titul pořádně využívající fyziky - Half-Life 2

A tím se dostáváme k tomu nejpodstatnějšímu. Jaká nás čeká budoucnost? Bude zelená (PhysX)? Bude modrá (Havok)? Nebo vlastně jaká vlastně? Začněme ale po pořádku, přítomností. Dneska je situace na trhu poněkud chaotická. Když to vezmeme stručně, jediné akcelerátory s opravdu funkční podporou výpočtů přes grafickou kartu (a tedy schopné rozběhat fyzikální efekty), ať už je nazveme GPGPU nebo jinak, je řada GeForce od generace 8x00 výše. AMD sice nabízí svůj ATI Stream, dříve CTM, ovšem jeho využití je omezené pouze na několik dodávaných aplikací (například funkční klient pro folding@home) v některých případech s kontroverzními výsledky (konverze videa Avivo). Proti tomu CUDA od Nvidie je univerzální a hlavně dneska už obecně uznávané a využívané rozhraní, které umožňuje programovat GPU v obecně akceptovaných jazycích včetně vlastní varianty C, nebo přímo C++ v případě chystané nové generace Fermi. AMD sice hlasitě proklamuje podporu otevřeného OpenCL rozhraní, ale zatím (před pár dny!) vydala pouze beta verzi SDK s podporou CPU i GPU. Neříkám, že v budoucnu to nebude fungovat, to určitě ano, ale zatím je všechno jenom ve fázi zdlouhavého vývoje.

Zamyšlení nad budoucností PhysX
Logo rozhraní OpenCL

Proto je také pro AMD tak důležitý příchod DirectX 11, jehož součástí je DirectCompute, díky kterému lze programovat přímo GPU. Nová generace Radeonů je pochopitelně s DirectCompute kompatibilní a tím se AMD otvírá možnost využít i jejich akcelerátory pro podobné efekty, jako nabízela doteď jenom Nvidia. Má to ale jeden zásadní háček, který možná není ještě pořád spoustě lidí jasný.



 
Komentáře naleznete na konci poslední kapitoly.
113 čtenářů navrhlo autorovi prémii: 39.7Kč Prémie tohoto článku jsou již uzavřené, děkujeme za váš zájem.
Tento web používá k poskytování služeb soubory cookie.