Newsroom Wiadomości Najciekawsze Komiksy Tematy RSS
Wiadomość gramynawynos.pl 29 lipca 2011, 14:05

autor: Łukasz Marek

Tech #03 - PhysX

Co to jest PhysX? Co daje PhysX? Technologia PhysX i jej praktyczne zastosowanie oraz wpływ na gry.

Każdy fizyczny obiekt w grze komputerowej jest poddawany pewnym oddziaływaniom, które zdefiniowane są od strony programistycznej. Zazwyczaj jest to niestety sztywne przypisanie - co stanie się z danym obiektem po kolizji z obiektem A/B lub C. Niestety, programiści muszą napisać swoje "właściwości" fizyczne od zera w jakimś języku programowania, albo skorzystać z praktycznie gotowej solucji. Na tą solucję właśnie wpadła firma o nazwie Ageia (obecnie przejęta przez NVIDIA), a nazywa się ona PhysX.

PhysX to nic innego jak gotowy silnik, który umożliwia uzyskanie w grach komputerowych efektów, które są bardzo podobne lub wręcz identyczne w porównaniu z tym co stałoby się z danym obiektem w rzeczywistości. Gdy w 2006 roku firma Ageia wprowadziła na rynek komputerów PC kartę o nazwie PhysX nikt nie wróżył temu przedsięwzięciu wielkiego sukcesu. W końcu dlaczego klienci mieliby płacić prawie 1000 zł za kartę rozszerzeń do obliczania fizyki w grach, która przyda się w zaledwie 2-3 tytułach i jeszcze do tego nie można jej wykorzystać w żaden inny sposób.

Kartę Ageia PhysX kupowali tylko najwięksi maniacy gier komputerowych z i tak już wypasionym sprzętem - była to swojego rodzaju wisienka na torcie, która dawała efekty fizyczne takie jakie chciało się oglądać, a jednocześnie było to też powodem "do szpanu". Dla nawet najmocniejszych na świecie procesorów obliczenia fizyki były zbyt obciążające (i tak jest też dzisiaj), a karta Ageii dawała taką możliwość bez znaczącego spadku wydajności. Mimo wszystko projekt powoli upadał, właśnie z powodu braku wsparcia dla produktu małej przecież firmy. Na ratunek przyszła pewna firma: jedna z dwóch największych produkujących układy graficzne - NVIDIA - znana z kart graficznych serii GeForce - zwęszył tutaj szansę na niezły interes.

W 2008 roku NVIDIA odkupiła od firmy Ageia prawa do silnika PhysX, zmieniła nieco architekturę swoich kart graficznych i zaimplementowała PhysX jako kolejny dodatek. Wtedy większość sądziła, że jest to zwykły chwyt marketingowy, a z PhysX’a już wiele wykrzesać się nie da. NVIDIA odświeżyła biblioteki, namówiła producentów gier (duża firma, która ma przebicie), aby posługując się PhysX’em robili piękne i realistyczne gry i... poszło już właściwie z górki.

Dzisiaj technologia PhysX jest możliwa do wykorzystania na każdej karcie graficznej GeForce - począwszy od serii GeForce 8xxx, czyli wszystkie zgodne z DirectX 10 oraz DirectX 11. Dodatkowo, co jakiś czas oprócz różnej maści gier obsługujących PhysX, przy okazji jakiejś wielkiej premiery robi się pokaz działania PhysX’a i właśnie tego rodzaju grą jest MAFIA II.

W nowej odsłonie gry PhysX ujawnia się przede wszystkim w destrukcji. Możemy zniszczyć bardzo dużo rzeczy w całym mieście, oglądać realistycznie tłukące się szyby i latające wokół głównego bohatera odłamki, które nie znikają nagle w powietrzu tak jak to zwykle jest w grach. Tutaj każdy, nawet najmniejszy element ściany, która została zniszczona, leży u stóp bohatera - można do niego strzelić i go przesunąć, albo po prostu przejść obojętnie i napawać się widokiem chaosu, który przed chwilą uczyniliśmy z karabinem maszynowym w ręce.

Screeny porównawcze z MAFII 2 poniżej:

Ciężko nie zauważyć różnicy pomiędzy włączonym i wyłączonym PhysX’em. Jak widać można zniszczyć więcej obiektów w bardziej dotkliwy sposób, a efekty tego są widoczne gołym okiem nie tylko na samym obiekcie, ale też na ziemi wokół niego - odłamki są wszędzie, a w grze nie jest już tak "pusto".

Niestety, za PhysX'a przypłacamy wydajnością. W końcu teraz ta sama karta graficzna oprócz generowania grafiki musi też policzyć efekty PhysX.

Przeprowadziliśmy więc test w MAFIA II, w tym samym miejscu - raz z włączonym, a raz z wyłączonym PhysX'em.

Wyniki:

Spadek jest, a w przypadku MAFII 2 wynosi on około 15%. Wyniki mogą się oczywiście różnić w zależności od samej gry - jest to uwarunkowane liczbą efektów PhysX użytych przez autorów gry czy architekturą karty graficznej. Liczy się zatem wydajność kart graficznych, im są one szybsze, tym PhysX będzie lepiej działał. Warto jednak dodać, że architektura kart, a także sam PhysX, są cały czas usprawniane i wychodzą coraz to nowsze gry z nich korzystające. Jeśli tylko opcja zaawansowanej fizyki jest dostępna i macie wystarczająco mocnego GeForce'a do gry z włączonym efektem, to zdecydowanie polecam. Jest na co popatrzeć. Słowo GeForce jest tutaj jednak kluczowe. Włączenie technologii PhysX na procesorze lub na konkurencyjne karcie AMD Radeon skutkuje nieprzekraczalną granicą płynności obrazu na poziomie 10-15 kl/s, więc gracze bez wspomnianego wcześniej GeForce'a "pod maską" o realistycznej fizyce w grach mogą tylko pomarzyć.