Dlaczego nigdy nie osiągniemy fotorealizmu w grach wideo?
Pamiętam pierwsze zachwyty nad grafiką 3D. Choć Duke Nukem (nomen omen z 3D w nazwie) starał się jak najwierniej odwzorować otoczenie, to właśnie Quake i Tomb Raider wyznaczyły nowy kierunek rozwoju.
05.02.2015 | aktual.: 15.01.2016 15:37
Światy w tych produkcjach były w większości oparte na bryłach i choć okazały się mniej złożone od tego, co zaproponował Książę, zmieniły wszystko. Już wtedy puszczano wodze fantazji, a co bystrzejsi analitycy sypali z rękawa datami, kiedy grafika w grach będzie fotorealistyczna. Czy ich prognozy się sprawdziły?
Ogrywając dwa lata później Need for Speed: Hot Pursuit w zachwytach nad światłami i teksturami wygładzonymi dzięki akceleracji sprzętowej, sam w to uwierzyłem. Dzisiaj, kilkanaście lat później, widzę, jak czcze to były marzenia. Być może na statycznych obrazkach zbliżamy się do fotorealizmu, ale do gier wyglądających fotorealistycznie w ruchu daleka droga i prawdopodobnie nigdy nie dotrzemy do jej końca.
Fotorealizm Zacznijmy od początku. Czym jest fotorealizm? Fotorealizm oznacza, że przedstawiona widzowi scena jest dla niego nie do odróżnienia od fotografii (rzeczywistości). W grach wideo nie oznacza to moim zdaniem wybrania pojedynczej sceny i zrobienia zrzutu ekranu. Aby gra była fotorealistyczna, musi takowe wrażenie sprawiać w ruchu. W tym tekście postaram zmierzyć się z wyzwaniami, jakie to za sobą niesie.
Na statycznym obrazku, po zastosowaniu moda zmieniającego tekstury, roślinność w Crysis przypomina rzeczywistość.
Marne sztuczki Tworzenie gier od zawsze związane było z szukaniem sztuczek pozwalających na przedstawienie możliwie jak najbardziej złożonej sceny przy jak najoszczędniejszym użyciu zasobów. Protoplastą i swoistym geniuszem swoich czasów był John Carmack. To dzięki niemu i technologiom, które wdrożył (ray casting, binary space partitioning, surface caching, mega texture) gry mogły wyświetlać coraz bardziej złożoną grafikę. I tutaj mamy pierwszy haczyk. Złożoność nie równa się fotorealizmowi.
To, że w pierwszej Mafii zastosowano prawdziwe tekstury twarzy, nie oznacza, że postacie wyglądały fotorealistycznie. Owszem, jak na tamte czasy zachwycały, ale dziś nikt już nie da się oszukać. Zwróćcie też uwagę, jak bardzo zestarzały się gry 3D w stosunku do innych. To jest właśnie cena rozwoju, jaki napędziły.
Nie łudźmy się, że dzisiaj programiści nie korzystają już z tych sztuczek. Niektóre z nich, takie doczytywanie tekstur i zwiększanie ich szczegółowości podczas zbliżania się postaci, są stosowane do dziś i skutecznie wybijają nas z postrzegania, że widziany obraz przypomina rzeczywistość. Jakie jeszcze problemy napotka twórca, który będzie chciał sprawić, aby gracz zaczął mylić świat rzeczywisty z komputerowym?
Technologia MegaTexture sprawiła, że świat Rage nie składa się z wielu pojedynczych tekstur, tylko jednej ogromnej. Każde miejsce wygląda więc inaczej, ale niesie to za sobą dodatkowe problemy (m.in. dogrywanie się tekstur przy szybkim odwróceniu gracza i słaby wygląd tekstur na małych, szczegółowych elementach świata)
Problem pierwszy: wygładzanie krawędzi Poszarpane krawędzie to zmora dzisiejszych gier. Jednak jak się okazuje, gra odpalona jakiś czas po premierze na szybkim komputerze PC z mocnym wygładzaniem krawędzi wcale nie musi wyglądać bardziej realistycznie. Często wygląda po prostu bardziej sterylnie. Biorąc za maksymę powiedzenie - czego oczy nie widzą, tego sercu nie żal - możemy przyjąć, że samo wygładzanie krawędzi nie wystarczy, a nawet może przeszkodzić w odbiorze gry. Dlaczego? W niektórych produkcjach rozmazana grafika maskuje niedoskonałości przedstawionej sceny.
Teoretycznie problem z wygładzaniem krawędzi zniknie, gdy będziemy grać w rozdzielczości około 8000 x 6000 pikseli. Mniej więcej do takiej rozdzielczości ludzkie oko widzi różnicę pomiędzy obrazem komputerowym a rzeczywistym Oznacza to, że obraz o takich parametrach będzie zdolny je oszukać. W tym momencie napotkamy kolejny problem.
Problem drugi: złożoność przedstawianej sceny Gra to nie statyczny obraz. To, że technologia pozwala na renderowanie fotorealistycznej grafiki statycznej, niczego nie zmienia. Aby podczas grania w grę dostać złudzenia fotorealizmu, potrzebujemy o wiele więcej. W skład złożonej sceny wchodzi między innymi fizyka, oświetlenie i sam projekt świata. Choć systemy fizyczne i oświetleniowe są coraz lepsze, jak obejdziemy problem projektowania świata? Kto zajmie się tworzeniem tych wszystkich obiektów w taki sposób, aby przypominały rzeczywistość? Jeśli myślicie, że to nie problem, spójrzcie na powtarzalność elementów w dzisiejszych sandboxach.
Ile pracy kosztuje odtworzenie skomplikowanego budynku w grze? Stworzenie Notre Dame na potrzeby Assassin's Creed Unity zajęło dwa lata.
Katedra Notre Dame w Assassin's Creed Unity została odwzorowana z najmniejszymi detalami. Według twórców zajęło to dwa lata
Problem trzeci: percepcja Czy czasami widząc jakieś zdjęcie, wydawało wam się nierealistyczne, a później okazywało się, że jest prawdziwe? Problemem jest nasza percepcja. Jeśli pokażemy w programie przyrodniczym węża o przezroczystej skórze, zdziwimy się, ale zaakceptujemy go, bo ktoś nam pokazuje rzeczywisty dowód na jego istnienie. Czy podobnie byłoby, gdybyśmy po raz pierwszy zobaczyli go w grze wideo?
Innym problemem naszej percepcji jest to, że nasz mózg nie może być zaabsorbowany otoczeniem przez cały czas. Dlatego nie przyglądamy się ścianom w naszym biurze czy tapecie w pokoju. W pewnym momencie przestajemy na nie zwracać uwagę. Przy pierwszym kontakcie z grą zwracamy uwagę na wszystko. Dzisiaj nowe gry walczą o naszą uwagę wieloma efektami, a my i tak nie jesteśmy w stanie jednocześnie ich wszystkich objąć wzrokiem. Podobnie też jak ze zmysłem węchu, który przy długim kontakcie z zapachem przestaje go rejestrować, po kilku godzinach grania przestajemy zwracać uwagę na wodotryski graficzne.
Problem czwarty: Dolina Niesamowitości Załóżmy, że pokonaliśmy wszystkie powyższe problemy. Co z postaciami? To, że będziemy w stanie stworzyć je na własny obraz i podobieństwo, nie znaczy jeszcze, że będą się zachowywały jak ludzie. A to przecież świadczy o fotorealizmie przedstawionej sceny. Skąd Dolina Niesamowitości? Okazuje się, że humanoidalne roboty, które są wykonywane tak, aby jak najbardziej przypominały ludzką formę, wywołują niepokój u prawdziwych ludzi. Dzieje się tak dlatego, że od istot, które przypominają, a które znamy, oczekujemy określonych zachowań. Robot nie zachowuje się jak człowiek i w naszym umyśle tworzy swojego rodzaju dysonans poznawczy, prowadzący do niepokoju, odrazy, a nawet strachu.
Problem piąty: "przecież komputerowe efekty specjalne w kinie już są realistyczne" Czy aby na pewno? Po pierwsze, obraz w kinie jest wyświetlany w 24 klatkach na sekundę, co nie pozwala podczas szybkich scen dostrzec wszystkich detali (patrz Transformers). Po drugie, są to zapisane w scenariuszu sceny, które można edytować do zadowalającego efektu. W grze wszystko dzieje się w czasie rzeczywistym.
Dobrym przykładem gry, która ukazuje wszystkie te bolączki i wyzwania, jest zmodowane GTA IV. Wydaje się, że wszystko jest tutaj na miejscu. Mamy prawdziwe tekstury otoczenia w wysokiej rozdzielczości (elewacje, asfalt, chodniki). Są podmienione modele samochodów odwzorowane z niezwykłą dbałością o szczegóły. Zastosowano mocny antyaliasing i podrasowano oświetlenie. Zresztą spójrzcie sami.
Co jest więc nie tak? To czy wygląda lepiej czy gorzej od podstawki jest rzeczą względną, ale dlaczego nie wygląda fotorealistycznie w ruchu? Prawdopodobnie z wszystkich przytoczonych wyżej powodów.
Ten obrazek ze stylizowanego na Nowy Jork Liberty City przypomina rzeczywistość. Zwróćcie jednak uwagę na tekstury betonowych podstaw filarów nadziemnej linii metra
Czy jest szansa na fotorealizm w grach? A Wy? Co myślicie o fotorealizmie w grach? Ja po kilkunastu latach grania porzuciłem wszelkie nadzieje, ale chyba chciałbym się mylić. Jeśli będziecie zainteresowani tematem, w kolejnym felietonie napiszę o tym, dlaczego uważam, że wcale nie potrzebujemy fotorealistycznej grafiki w grach. Może wtedy wszystkim nam spadnie kamień z serca.
Rafał Pawlak