Z rozhovoru s Manju Hegdem na podzim roku 2008
Od té doby, co Nvidia spolkla Ageiu, se toho kolem hardwarové akcelerace fyziky přes GPGPU ve hrách moc nezměnilo. S přechodem Manju Hedge se vyrojila řada spekulací o tom, že AMD připravuje konkurenční řešení pro PhysX. Snad právě proto se jej teď Bit-tech.net poptal na to, jak to s hardwarovou akceleraci fyziky na platformě AMD vypadá a co si o fyzice počítané na grafických kartách myslí.
Ještě předesílám, že Bullet Physics není alternativa k PhysX od AMD, jak to může z některých článků vyznít, ale jde o open source engine, který krom řady dalších podporuje také Nvidia.
V rozhovoru se dozvíte, že AMD by nejspíš PhysX postavené na otevřené platformě OpenCL podporovalo. Bere prý otázku herní fyziky postavené na OpenCL velmi vážně, v poslední době přibralo třeba Erwina Coumanse ze Sony, hlavního vývojáře Bullet Physics (použitého např. v GTA IV či Red Dead Redemtion, ale i ve 3DMarku 11), který pomáhal Bullet prosadit i v průmyslu, například při filmových efektech (např. Hancock či 2012). Už dva měsíce pro AMD pracuje i Takahiro Harada, japonský profesor, který byl členem týmu stojícího za Havokem. Všichni jsou teď klíčovými členy týmu AMD, který se i nadále rozšiřuje.
K tomu, aby s podporou Bullet Physics na rozdíl od Havoku akcelerovaném přes GPU či s PhysX AMD prorazilo, by měl pomoci odlišný obchodní model. Podle Hegdeho bylo jednou z chyb, že model, použitý u PhysX, stavěl na pevném API (rozhraní), které nedovolovalo vývojářům, aby jej upravili, protože by to negativně ovlivnilo hardwarovou akceleraci. Podobný problém má i Havok.
Bullet je jiný, chce, aby si vývojáři efekty vytvářeli sami a využili při tom API Bulletu které funguje na mnohem nižší úrovni a nemuseli se přizpůsobovat jen tomu, co nabízí SDK (proti tomuto výroku Manju Hegde se ohradil Igor Staněk z Nvidie s tím, že to platilo před dvěma lety a v současnosti už je PhysX na low level úrovni editovatelný stejně jako Bullet, pozn. red.) Na rozdíl od PhysX může Bullet běžet na široké paletě GPU od různých výrobců.
V současnosti už část z balíku Bullet Physics dokáže hardwarové akcelerace přes OpenCL využít, a část je naprogramovaná i pro rozhraní CUDA od Nvidie. Celý model je pro vývojáře velmi přívětivý, mohou se svobodně rozhodovat, co poběží na CPU a co na GPU a nikdo jim nebude říkat tohle můžete použít na kartách ATI a můžete to využívat tak a tak.
Tento model může fungovat, ale bude to drahé, protože ani samotní vývojáři nejsou k podpoře Bullet motivovaní a bude to stát hodně úsilí. Je zapotřebí, aby se celé rozhraní šířeji otevřelo – v tomto ohledu má Bullet tu výhodu, že může na rozdíl od PhysX běžet na nejrůznějších platformách, třeba v internetovém prohlížeči.
Pokud vládnete angličtinou, celý rozhovor si můžete v originále přečíst na Bit-tech.net, strojový překlad do češtiny moc doporučit nelze, jako tradičně je u podobných témat poněkud šroubovaný a nepřesný.
Hegde taky nevyloučil možnost, že by AMD ještě zase někdy spolupracovalo na GPGPU verzi Havoku, v současnosti se ale zaměřuje na Bullet Physics.
Čte se to hezky a vypadá to docela slibně, ale bohužel se pořád dá jen říct, že zatímco i na PhysX narazíte ve hrách spíše sporadicky (pořád jde ale o nejpoužívanější API), AMD o Bulletu zatím jen dlouho mluví, přičemž praktický dopad na herní průmysl to má jen minimální.