Newsroom Wiadomości Najciekawsze Komiksy Tematy RSS
Wiadomość gry 20 czerwca 2023, 11:27

autor: Adrian Werner

Gry na PC nie działają jak powinny, twórcy wskazują przyczyny problematycznych portów

W sieci pojawił się ciekawy artykuł, w którym deweloperzy wytłumaczyli powody niskiej jakości wielu tegorocznych konwersji gier na PC oraz metody, jakie można wykorzystać, aby tego uniknąć.

Źródło fot. Midjourney
i

Ten rok upływa do tej pory m.in. pod znakiem fatalnych konwersji z konsol na PC. Wiele osób zadaje sobie pytanie co jest przyczyną takiego stanu rzeczy i co zrobić, aby w przyszłości tego uniknąć. Dlatego warto zwrócić uwagę na intrygujący artykuł serwisu DigitalTrends, którego redaktorzy zaciągnęli opinii w tej sprawie u samych deweloperów.

Marc Whitten z tworzącej silniki graficzne firmy Unity dał dosyć standardową odpowiedź obarczając winą niezliczone konfiguracje, jakie można znaleźć w komputerach graczy. Do tego dochodzą różne wersje sterowników i systemów operacyjnych, jak również programy działające w tle. Tych wariantów potrafi być kilkadziesiąt tysięcy, co mocno utrudnia testowanie gry oraz jej optymalizację.

Dlaczego konwersja Hi-Fi Rush się udała, a port Star Wars Jedi: Survivor nie?

Takie wnioski nie są niczym nowym i nie byłoby warto pisać tylko o nich. Artykuł DigitalTrends jednak zawiera również opinie deweloperów odnośnie tego, jak zminimalizować te problemy i dostarczyć dopracowaną wersję pecetową.

  1. Dziennikarze skontaktowali się m.in. z twórcami Star Wars Jedi: Survivor, czyli jednego z tegorocznych złych portów. Deweloperzy początkowo byli skorzy do rozmowy, ale potem interweniowała będąca wydawcą gry firma Electronic Arts i kontakt się urwał.
  2. Na szczęście znacznie bardziej komunikatywni okazali się ludzie ze studia Tango Gameworks. Hi-Fi Rush tego zespołu podawany jest jako główny przykład, że w 2023 roku możliwe jest stworzenie dopracowanej wersji pecetowej gry, którą głównie opracowano z myślą o konsolach. Dobrze nadaje się ona również do porównań z Star Wars Jedi: Survivor, gdyż oba tytuły zbudowano na silniku Unreal Engine 4.
  3. Od początku absolutnym priorytetem dla Tango Gameworks było zapewnienie wysokiej płynności i 60 klatek na sekundę. Wynika to z tego, że Hi-Fi Rush to rytmiczna gra akcji, dlatego przycinki miałyby fatalny wpływ na rozgrywkę, powodując np. desynchronizację muzyki i akcji.
  1. Twórcy osiągnęli to na trzy sposoby. Pierwszym było staranne monitorowanie użycia pamięci VRAM na każdym etapie prac nad Hi-Fi Rush. Projektanci poziomów stale modyfikowali swoje mapy, a artyści modele i tekstury, tak aby nie przekroczyć ustalonego limitu. Tutaj pomogła kreskówkowa stylistyka, dzięki której tekstury nie musiały być tak szczegółowe, jak w grach o bardziej realistycznej grafice.
  2. Drugim elementem, który pomógł deweloperom była obecna w Unreal Engine 4 funkcja PSO (Pipeline State Object), która pozwala skompilować wiele shaderów przed rozpoczęciem rozgrywki i tym samym ograniczyć przycinanie. Nie jest ona jednak aktywowana automatycznie - studia deweloperskie muszą ją specjalnie zaimplementować i nie wszystkie się na to zdecydowały, zwłaszcza, że odpowiednie wykorzystanie tego systemu wymaga sporego nakładu pracy.
  3. Trzecim elementem, który zapewnił Hi-Fi Rush wysoką płynność, było zastosowanie asynchronicznych operacji, w ramach których m.in. shadery są kompilowane w innym odrębnym wątku niż reszta gry. To ma duże znacznie, ponieważ Unreal Engine 4 nie radzi sobie zbyt dobrze z wykorzystywaniem wielowątkowości współczesnych procesorów, co boleśnie widać np. w Redfall oraz właśnie Star Wars Jedi: Survivor. Przede wszystkim UE4 umieszcza operacje związane z postaciami i obiektami w tym samym wątku, co tzw. widgety (czyli np. elementy interfejsu). Powoduje to, że przy bardziej skomplikowanych scenach gra się dusi, bo jej pozostałe elementy muszą czekać, aż ten jeden watek zakończy ładowanie postaci i widgetów.
  4. Metodą na to okazały się właśnie asynchroniczne operacje. Tango Gameworks korzystało z narzędzia, które analizowało użycie procesora przy ładowaniu nowych elementów. Na tej podstawie twórcy opracowali system, który stale przekazuje zadania do innych wątków zapobiegając spowolnieniu. Zastosowanie takiego rozwiązania np. w remake’u Dead Space usunęłoby problemy z przycinaniem przy streamingowaniu danych.

Ludzie z Tango Gameworks podkreślili także, że jakość pecetowego Hi-Fi Rush była możliwa dzięki wcześniejszym doświadczeniom wyniesionym z prac nad Ghostwire: Tokyo. Ta produkcja miała pewne problemy z wydajnością (choć nieporównywalnie mniejsze niż tegoroczne zepsute konwersje) i walcząc z nimi twórcy nauczyli się dużo na temat optymalizacji.

Pozostaje mieć nadzieję, że inne zespoły pójdą podobną drogą i porażki tegorocznych konwersji będą lekcjami, które umożliwią im uniknięcie podobnych problemów w przyszłości.

  1. 6 gier na PC w ostatnich miesiącach było zepsutych, oto status ich naprawy
  2. Recenzja Star Wars Jedi: Survivor - epicki sequel bez mocy optymalizacji
  3. Star Wars Jedi Survivor - poradnik do gry

Adrian Werner

Adrian Werner

Prawdziwy weteran newsroomu GRYOnline.pl, piszący nieprzerwanie od 2009 roku i wciąż niemający dosyć. Złapał bakcyla gier dzięki zabawie na ZX Spectrum kolegi. Potem przesiadł się na własne Commodore 64, a po krótkiej przygodzie z 16-bitowymi konsolami powierzył na zawsze swoje serce grom pecetowym. Wielbiciel niszowych produkcji, w tym zwłaszcza przygodówek, RPG-ów oraz gier z gatunku immersive sim, jak również pasjonat modów. Poza grami pożeracz fabuł w każdej postaci – książek, seriali, filmów i komiksów.

więcej