Karty graficzne
Artykuł
Mieszko Krzykowski, Piątek, 10 września 2010, 14:20
Czego wymagamy od gier? To trudne pytanie, na które nie da się udzielić jednoznacznej odpowiedzi, ponieważ – co może zabrzmieć trochę banalnie – każdy ma odmienny gust. Niektórzy na pierwszym miejscu wymienią zakręconą fabułę, inni – wartką akcję, ktoś zapewne wspomni o klimacie czy humorze. Nie mniej ważne mogą być grafika i realizm, które potrafią istotnie wpłynąć na część z wcześniej wspomnianych aspektów. Właśnie w realizm celuje PhysX – technika, którą bardzo stara się wypromować NVIDIA i o której od dłuższego czasu nie można było przeczytać na łamach PCLab.pl. Zdecydowaliśmy się załatać w końcu tę poważną lukę i przedstawić obecny stan PhysX-a, a także odkurzyć swoją kryształową kulę.

A cóż to takiego ten PhysX?

Dawno, dawno temu, za siedmioma dolinami krzemowymi i siedmioma piaskowymi mostami... No dobrze, nie aż tak dawno temu, bo w roku 2006, i nie aż tak daleko firma Ageia postanowiła zrewolucjonizować rynek gier. Inżynierowie firmy uznali, że epoka uproszczeń i sztywnych skryptów dobiegła końca i nadszedł czas symulacji fizyki najwyższych lotów. Ta rewolucja miała nastąpić dzięki ich nadzwyczajnym bibliotekom oraz dodatkowej karcie rozszerzeń, nazywanej przez nich PPU (ang. Physics Processing Unit), która miała zawrzeć z GPU i CPU swoiste trójporozumienie oraz stać się nowym elementem ekosystemu gracza entuzjasty.

Plany firmy były bardzo ambitne, obietnice przypominały rozmachem przedwyborcze tyrady polityków, a możliwości i potencjalne korzyści na papierze wyglądały zachęcająco. Do gier w końcu miał zawitać realizm z prawdziwego zdarzenia, a gracz miał mieć możliwość wchodzenia w interakcję z otoczeniem. Początkowe dema techniczne czy gry pokroju CellFactora robiły spore wrażenie. Padały nawet stwierdzenia, że Ageia chce powtórzyć sukces firmy 3Dfx, której to udało się przekonać świat, że akcelerator grafiki to jest to, czym uda się popchnąć rozwój gier do przodu. No i w pewnym sensie Agei udało się powtórzyć „sukces” twórców kart Voodoo, ponieważ tak samo jak 3Dfx została... wykupiona przez NVIDI-ę. Nastąpiło to w roku 2008. Nie pomogło nawet to, że z bibliotek PhysX korzysta tak popularny silnik gier jak Unreal Engine 3.

Krótko mówiąc, coś poszło nie tak, jak miało pójść, a technika nie przyjęła się. „Zielonemu” gigantowi było to na rękę, bo obniżało koszt inwestycji. Z punktu widzenia NVIDI-i był to bardzo ważny strategiczny ruch, ponieważ w tym czasie pierwsze niepewne kroki stawiała machina o imieniu CUDA. Po miesiącach wytężonej pracy udało się przenieść technikę stworzoną przez Ageię z PPU na GPU kart GeForce serii 8000. PhysX miał udowodnić, że CUDA jest fajne, jest ważne i daje wymierne korzyści nie tylko w zastosowaniach profesjonalnych. Poza tym PhysX miał być ważnym elementem marketingu NVIDI-i i wyraźnie wyróżniać ją na tle AMD. O PhysX znowu zrobiło się głośno za sprawą wielkiej kampanii uruchomionej przez korporację z Santa Clara, a na horyzoncie pojawiły się pierwsze naprawdę ważne tytuły korzystające z akceleracji fizyki, mające na nowo zdefiniować pojęcie realizmu w grach.

Mamy drugą połowę roku 2010. Czy rewolucja nastąpiła? W pewnym sensie PhysX osiągnął sukces, ale nie do końca taki, jakiego chciałaby NVIDIA. Nazwę PhysX przeważnie wymienia się w kontekście akceleracji fizyki przy użyciu dodatkowej karty rozszerzeń (PPU) albo karty graficznej GeForce. Ale PhysX to nie tylko to. Przede wszystkim są to rozbudowane i zaawansowane biblioteki umożliwiające twórcom gier łatwe korzystanie z symulacji fizyki w swoich grach. Dzięki nim jest możliwe nadawanie obiektom w grach takich właściwości jak masa czy przeprowadzanie symulacji zderzeń. A wszystkie związane z tym obliczenia wykonuje „staromodny” procesor. W dość krótkim okresie bibliotekom PhysX udało się wyprzedzić weterana tego rynku, czyli biblioteki Havok. W dużej mierze przyczyniła się do tego popularność silnika Unreal Engine 3. Jest to naprawdę duże osiągnięcie. Ale znakomita większość z tych gier nie wykorzystuje ani linijki kodu, który można by wykonać na GPU. Warto o tym pamiętać, ponieważ często ludzie mylą tak zwany GPU PhysX (akcelerację niektórych efektów fizyki z użyciem GPU) z CPU PhysX („zwykłymi” procesorowymi bibliotekami PhysX). Częściowo do tego zamieszania przyczynia się sama NVIDIA, ponieważ często mówi o tym, że PhysX jest super, bo korzysta z niego już ponad 100 gier. Jest to oczywiście prawda, ale przyspieszać niektóre efekty PhysX na GPU umie bardzo niewielka część z nich. W tym momencie z akceleracji na GPU umie korzystać około 15 gier. A jeśli odrzucimy te niedostępne w Polsce (jak Startales) lub te, w które nikt nie gra (Warmonger?), zostaje około 10 tytułów. Nie jest to zbyt pokaźna liczba, więc sukces PhysX jest tylko połowiczny, bo o ile udało się wywalczyć mocną pozycję na rynku bibliotek fizyki, o tyle na rynku akceleracji fizyki nie udało się zdziałać zbyt wiele. Ale NVIDIA nie poddaje się.

Warto tutaj wymienić jeszcze jedno trudne słowo, które bywa wykorzystywane, szczególnie ostatnio, w niezbyt właściwym kontekście. Chodzi o APEX. Czym jest APEX? Jest to zestaw narzędzi ułatwiających twórcom gier implementowanie efektów PhysX w swoich grach. Składa się on z takich modułów, jak: APEX Destruction, APEX Cloth, APEX Turbulence. Dzięki tym narzędziom można szybko i bezboleśnie zaimplementować zaawansowane efekty fizyczne bez napisania ani jednej linijki kodu. To dlatego, że te efekty nie są umieszczane w grze przez programistę, a przez artystów i projektantów. Na przykład projektant poziomów może określić, które elementy środowiska mogą zostać zniszczone, jak będą się zachowywać, jeśli gra będzie miała do dyspozycji zwykły procesor, a co się stanie, jeśli będzie można skorzystać z mocy obliczeniowej GPU. Całą resztą zajmuje się „automatyka”, która generuje odpowiednie modele zniszczeń. NVIDIA wkłada wiele pracy w przygotowanie takich ułatwień przeznaczonych dla twórców gier, ponieważ oczywiste jest, że im łatwiej i – przede wszystkim – taniej projektanci będą mogli implementować efekty PhysX w grach, tym więcej będzie takich gier.

Przyjrzymy się teraz, co obecnie oferuje PhysX, na przykładzie popularnych gier korzystających z akceleracji fizyki na kartach GeForce.

Shadow Kings
Ocena artykułu:
Ocen: 28
Zaloguj się, by móc oceniać
Gilas (2010.09.10, 14:26)
Ocena: 6

0%
Piękny Art w dobie mojej polemiki z Promilusem na temat fizyki w grach (http://pclab.pl/kom56271--0.html#c412038).
Pozdrawiam wszystkich bez wyjątku, proponuje troszkę ogłady w wyciąganiu pochopnych wniosków i sądów.

AMEN :-)
fajny Rafałek (2010.09.10, 14:39)
Ocena: 5

0%
Wielka szkoda, że PhysX nie ratuje tych gierek przed byciem nudnymi. Może poza UT3, ale tam krytyka się należy, bo jakoś zaprzęgneli do fizyki GeoModa w Red Faction i jakoś to nie ustępowało możliwościami PhysXowi. Czekam na rozwiązanie, które działa wszędzie.

Z fajnych gier z GPU PhysX to jeszcze bym polecał Cell Factor i Crazy Machines II.
SuLac0 (2010.09.10, 14:44)
Ocena: -4

0%
nowe physx sdk wprowadza obsluge m.in.SSE2 ogolnie sporo zmian
http://physxinfo.com/news/3744/physx-sdk-2...ystem-software/
btw: gdzie Sacred 2 ????
Igloczek (2010.09.10, 14:53)
Ocena: 12

0%
fajny Rafałek @ 2010.09.10 14:39  Post: 412042
Wielka szkoda, że PhysX nie ratuje tych gierek przed byciem nudnymi


Mirror's Edge dobre było!
miraż (2010.09.10, 14:56)
Ocena: 9

0%
Mieszko, gratuluję, świetny artykuł!
Bruno@Home (2010.09.10, 14:56)
Ocena: 8

0%
Gilas @ 2010.09.10 14:26  Post: 412039
Piękny Art w dobie mojej polemiki z Promilusem na temat fizyki w grach (http://pclab.pl/kom56271--0.html#c412038).
Pozdrawiam wszystkich bez wyjątku, proponuje troszkę ogłady w wyciąganiu pochopnych wniosków i sądów.

AMEN :-)


A czytales w ogole caly artykul, bo chyba nie do konca potwierdza prezentowana przez Ciebie opinie? ;-)

cyt:
'Niestety, bardzo nam się nie podoba porównywanie wydajności świetnie zoptymalizowanego i „zwielowątkowionego” kodu wykonywanego na GPU z jednowątkowym i niezoptymalizowanym kodem wykonywanym na CPU. Jest to zabieg czysto marketingowy, który wprowadza w błąd. A bardzo nie lubimy, jak się nas robi w konia.'

'Wszystko wskazuje na to, że znakomitą większość efektów GPU PhysX spotykanych w dzisiejszych grach dałoby się wykonywać na współczesnym wielowątkowym procesorze i zachować przy tym zadowalającą płynność.'
Zaloguj się, by móc komentować
Artykuły spokrewnione
Gry online
Facebook
Download Komputer Świat
Program do usuwania zbędnych plików z dysku twardego.
Jeden z najpopularniejszych emulator napędów optycznych CD, DVD oraz Blu-ray.
Opensource'owy, wieloplatformowy i popularny edytor grafiki rastrowej.
Popularny pakiet biurowy dla systemów Windows, OS X i Linux.
Program do pobierania muzyki z serwis streamingowego SoundCloud.
Popularne narzędzie do tworzenia plików w formacie PDF.
Niezależna gra komputerowa z otwartym światem z sześciennych klocków.
Narzędzie do konwersji materiałów wideo z serwisu YouTube.
Gra komputerowa łącząca w sobie elementy platformowe i zręcznościowe.
Konkursy
Całkiem niedawno informowaliśmy o sukcesie studentów z Uniwersytetu Warszawskiego, którzy zdobyli brązowy medal w konkursie ACM-ICPC 2015, a także rekordzie ustanowionym przez uczniów Politechniki Wrocławskiej, którzy nawiązali połączenie Wi-Fi o zasięgu 250 km. 7