r   e   k   l   a   m   a
r   e   k   l   a   m   a

AMD kontra NVIDIA w sporze o włosy Wiedźmina. GameWorks rozbije jedność PC?

Strona główna AktualnościROZRYWKA

Czy przyjdą czasy, w których grający na poważnie użytkownicy PC będą musieli jednocześnie kupować karty od AMD i Nvidii, by z nowych gier uzyskać wszystko, co mają w warstwie wizualnej do zaoferowania? Premiera Wiedźmina 3 odnowiła spór między czerwonymi i zielonymi o dopuszczalność pewnych zagrywek licencyjnych w walce o rynek gier komputerowych. Zastanówmy się jednak – w imię czego producenci tak drogiego sprzętu mieliby utrzymywać mit jednolitej platformy PC, skoro na konsolach pojawianie się gier na wyłączność dla danego urządzenia jest normą?

O stworzonym przez Nvidię pakiecie GameWorks wspominaliśmy niejednokrotnie. To zbiór własnościowych bibliotek i narzędzi, które mówią GPU, jak renderować cienie, symulować włosy, oświetlać obiekty czy rozpraszać oświetlenie otoczenia. Zdobyły one duże uznanie wśród twórców gier, pozwalając dość łatwo wykorzystać możliwości oferowane przez układy GeForce. Gdy jednak GameWorks zadebiutowało w zeszłym roku na rynku, towarzyszyła mu bardzo restrykcyjna licencja. Zabraniała korzystającym z niego producentom gier współpracowanie z konkurentami Nvidii w zakresie optymalizacji efektów zapewnianych przez GameWorks na innych niż GeForce układach graficznych.

To jednak nie wszystko. W przeciwieństwie do typowych bibliotek graficznych, GameWorks jest udostępniane normalnie nie w postaci kodu źródłowego, ale jako middleware, zrekompilowane biblioteki DLL, funkcjonujące jako „czarne skrzynki”, oferujące programistom dodatkowe, niedostępne normalnie w systemie usługi. Działają one nad interfejsem DirectX, pozwalając uzykać liczne ciekawe efekty wizualne. To np. HBAO+, odpowiedzialne za realistyczne oświetlanie i cieniowanie obiektów, HairWorks pozwalające na symulowanie i renderowanie włosów i futer czy PhysX Clothing, dzięki któremu szybko można zbudować w programach takich jak Maya czy 3ds Max postacie o dynamicznych ubraniach.

r   e   k   l   a   m   a

Kto komu i co może zoptymalizować?

Wszystkie te oferowane przez GameWorks funkcje działają na Radeonach… ale jak łatwo się domyślić, działają niezbyt dobrze. Przekonać się można było o tym choćby po premierze Assasin's Creed: Unity, kiedy to okazało się, że na najlepszych kartach graficznych AMD gra wygląda raczej przeciętnie. Radeonom brakowało mocy obliczeniowej, by programowo odtworzyć sprzętowe mechanizmy dostępne w nowych GeForce, wykorzystane poprzez GameWorks do stworzenia spektakularnej oprawy wizualnej. Nie był to jedyny wypadek tego typu, każda gra korzystająca z GameWorks będzie na Radeonach wyglądać gorzej – i w praktyce AMD niewiele było w stanie zrobić, by zmienić ten stan rzeczy.

Nic więc dziwnego, że deweloperzy bardziej przychylni koncepcji technicznej neutralności wzięli stronę czerwonych, nazywając „czarną skrzynkę” Nvidii wręcz złem wcielonym. W Sieci pojawiły się oskarżenia, że NVIDIA celowo przygotowała swój kod tak, by gorzej działał na układach konkurencji, a zamknięty kod źródłowy i obostrzenia licencyjne miały na celu jedynie zaszkodzenie konkurentowi w zdecydowanie niesportowy sposób.

Coś w tych oskarżeniach musiało być, gdyż wkrótce po głośnych w mediach społecznościowych wypowiedziach programistów z Electronic Arts, Radiant Worlds i Firaxis Games NVIDIA zmieniła swoją politykę licencyjną. Okazało się, że możliwe jest uzyskanie licencji na GameWorks obejmującej kod źródłowy. Dysponując nim programiści mogli wprowadzać dowolne zmiany zwiększające wydajność nie tylko na GPU Nvidii, ale też na innych platformach. Wybór takiej licencji kosztuje jednak dodatkowo – ile konkretnie, to już kwestia rozmów handlowych między firmami. Jak to jednak jest z tym zakazem współpracy z AMD i Intelem nad poprawianiem wydajności na ich układach graficznych? NVIDIA zaprzeczała, by taki zakaz miał miejsce, ale w samej branży gier zdania na ten temat były podzielone.

Wiedźmin Geralt ma fajne włosy, ale nie na Radeonach

Najgłośniejsza polska gra ostatnich lat ponownie rozpętała spór o GameWorks. Wiedźmin 3 wykorzystuje funkcje HairWorks, HBAO+, PhysX Destruction i PhysX Clothing. Kilka dni temu rzecznik CD Projekt Red, Marcin Momot, potwierdził, że Radeony mogą uruchomić te spektakularne efekty z włosami i futrami, zapewniane przez HairWorks, ale może to doprowadzić do znacznego spadku wydajności grafiki w grze. Funkcji tej po prostu nie można zoptymalizować dla kart czerwonej drużyny. Jeśli więc użytkownicy Radeonów zobaczą, że gra im kiepsko działa, to lepiej by HairWorks w ustawieniach gry wyłączyli.

To tylko dolało oliwy do ognia w prowadzonej na subreddicie /r/pcmasterrace dyskusji poświęconej GameWorks i grze Project Cars, która również ze względu na wykorzystanie silnika NVIDIA PhysX miała po prostu nie działać na kartach AMD. Autor wątku oskarżył deweloperów gry o świadome działania, mające na celu pogorszenie jakości grania nie tylko na Radeonach, ale też na starszych wersjach GeForce, twierdząc, że jak tak dalej pójdzie, to niebawem zaczną się pojawiać gry w ogóle niedostępne na Radeony.

W drugą stronę raczej tak by nie było – AMD podkreśla, że nie stawia żadnych ograniczeń twórcom gier co do optymalizacji kodu gier wykorzystujących ich biblioteki Gaming Evolved na platformach konkurencji, a nawet pomagało zoptymalizować mechanizm symulacji włosów TressFX tak, by na GeForce działał równie dobrze co na Radeonach. Kod źródłowy TressFX jest zresztą publicznie dostępny dla każdego zainteresowanego – można pobrać go ze stron AMD.

NVIDIA: zielone zło czy motor postępu?

Oskarżenia ze strony AMD są ciężkie, i wydaje się, że wielu graczy wydaje się pod nimi podpisywać. Nie ma się im co dziwić – kupili mocnego Radeona za pieniądze większe niż wynosi minimalna płaca w Polsce, a tu grafika jak na konsoli i marzenia o przynależności do pecetowej rasy panów jakoś się rozwiewają. Czy są one jednak faktycznie uzasadnione? Oficjalne stanowisko Nvidii w tej sprawie przedstawił właśnie Brian Burke, odpowiedzialny za PR projektów GameWorks i GRID.

Z jego wyjaśnień wynika, że decyzja o udostępnieniu GameWorks jako middleware była podyktowana chęcią pomożenia twórcom gier w szybszym rozwiązywaniu złożonych problemów graficznych. Wbudowanie innowacyjnych technik graficznych w biblioteki ma być wygodniejsze, niż po prostu udostępnianie kodu (który i tak jest dostępny dla licencjobiorców) i służyć ma przyspieszeniu postępu w opracowywaniu efektów wizualnych dla gier.

Burke zapewnił, że słaba wydajność Radeonów w funkcji HairWorks wcale nie wynika ze złej woli Nvidii. Do symulowania włosów i futra wykorzystuje ona intensywnie sprzętową teselację, czyli wprowadzoną w wraz z grami na DirectX 11 technikę dzielenia wygenerowanych wielokątów na mniejsze, dzięki czemu obiekt może być dokładniej narysowany. Sprzętowa teselacja w najnowszych GeForce jest bardzo szybka, GTX 980 osiąga trzykrotnie lepsze wyniki niż GTX 680, tymczasem nawet nowe Radeony, przy wysokim poziomie teselacji odczuwalnie zwalniają.

Nieporozumieniem ma być także wyciąganie sprawy z Project Cars: gra ta obecnie, zdaniem pracownika Nvidii, w ogóle nie korzysta z bibliotek GameWorks, a cała afera wynika tylko z tego, że AMD po prostu nie współpracowało z deweloperami gry przed jej wydaniem i nie zoptymalizowało sterowników, gdy gra była już gotowa.

Dalej się robi jeszcze ciekawiej. Nie jest tak, że korzystającym z GameWorks deweloperom gier nie wolno współpracować z innymi producentami sprzętu. NVIDIA twierdzi, że nigdy nikomu takiej współpracy nie zakazywała. Sęk jest w czymś innym. Kod źródłowy GameWorks udostępniany jest na licencji, która zakazuje dostarczania go komukolwiek, kto nie posiada licencji – i podobno jest to normalna praktyka w tej branży. Jako że AMD nie posiada licencji na GameWorks, nie może mieć dostępu do kodu. Nie oznacza to jednak zdaniem Burke'a, że AMD nie może optymalizować gier i sterowników pod funkcje GameWorks. Stwierdził on, że żądanie wydania kodu źródłowego to świetny sposób na wymiganie się od problemów z wydajnością. Faktycznie posiadanie kodu ułatwia optymalizację, ale nie jest dla niej konieczne, tym bardziej, że jest bardzo rzadką praktyką, mało kto decyduje się udostępnić kod gry stronom trzecim. Nawet w wypadku wspomnianego TressFX (użytego notabene tylko w jednej grze) kod został udostępniony dopiero po wydaniu Tomb Raidera. Dlatego deweloperzy Nvidii nie oglądają się na kod źródłowy, tylko biorą udostępnianie im kompilacje i pracują na binarkach.

Pracownik Nvidii nie oszczędził sobie też pewnych kąśliwości, zauważając, że afera bierze się z poszukiwania swojej nowej tożsamości przez AMD. Czerwoni przemieniają się z producenta CPU i GPU na dostawcę procesorów dla urządzeń wbudowanych, czipów serwerowych czy profesjonalnych rozwiązań graficznych, a to niekorzystnie ma wpływać na zasoby, jakie mogą poświęcić na gry komputerowe. Nie inwestując tyle co NVIDIA w rozwój technik wizualnych, obawiają się, że GameWorks da zielonym przewagę konkurencyjną, której nie będą mogli poradzić. Stawiając na rozwój zintegrowanych układów APU, AMD rzekomo chce sprowadzić granie do najniższego wspólnego mianownika – tymczasem NVIDIA jest firmą skupioną na GPU, dla której gry i granie możliwie najwyższej jakości jest sprawą kluczową.

Trudno zająć nam stanowisko w tej sprawie, każdy z Was samodzielnie musi ocenić rynkową strategię Nvidii i AMD. W miarę wprowadzania coraz bardziej spektakularnej i co za tym idzie wymagającej sprzętowo grafiki w grach można się jednak spodziewać, że moment, w którym niektóre gry staną się w ogóle niemożliwe do uruchomienia na GPU innym, niż to, dla którego je zaprojektowano, jest całkiem bliski. I z czysto kapitalistycznego punktu widzenia nikogo nie powinno to dziwić – producenci kart graficznych i gier żyją w symbiotycznych relacjach, nawzajem napędzając swoje z roku na rok coraz więcej warte biznesy. W tej sytuacji korzyści z jeszcze większego wzmocnienia relacji pomiędzy daną parą producenta sprzętu i producenta gry mogą w pewnym momencie przeważyć nad ryzykiem biznesowym wydania tytułu, który na innym sprzęcie po prostu nie będzie działał. To gracze zweryfikują, na ile takie posunięcia będą zasadne.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.