Oświetlenie w grach komputerowych przez lata przeszło ogromną ewolucję, stając się jednym z kluczowych elementów wpływających na realizm i atmosferę wirtualnych światów. Jednak jednym z największych przełomów było wprowadzenie technologii śledzenia promieni – ray tracingu. Co to jest, jak działa i co daje w grach? Tego dowiesz się z naszego artykułu!
Co to jest ray tracing?
Ray tracing, czyli śledzenie promieni, to technika generowania fotorealistycznych scen trójwymiarowych. Dzięki niej możliwe jest realistyczne przedstawienie zachowania światła w wirtualnym świecie. W tradycyjnych metodach renderowania (np. rasteryzacji) światło jest uproszczone i obliczane na podstawie prostych modeli, co pozwala na szybkie generowanie obrazów, ale dzieje się to kosztem dokładności i realizmu. Natomiast ray tracing działa w oparciu o śledzenie ścieżki, jaką promienie światła pokonują, odbijając się i załamując na różnych powierzchniach.
Jak działa ray tracing
Ray tracing działa w inny sposób niż tradycyjnie wykorzystywane w grafice metody renderowania. W rzeczywistym świecie światło rozchodzi się w postaci fotonów, które podróżują prosto od źródła światła, odbijając się, rozpraszając lub załamując na różnych powierzchniach, zanim dotrą do naszych oczu. Te fotony mogą być pochłaniane przez obiekty, co prowadzi do tworzenia cieni, lub odbijane, co pozwala nam widzieć odbicia na powierzchniach, takich jak lustra czy woda. Gdy światło przechodzi przez przezroczyste materiały, jego ścieżka zmienia się, co nazywamy refrakcją. Wszystkie te zjawiska razem pozwalają nam postrzegać świat w trójwymiarze i widzieć szczegóły związane z oświetleniem, kolorami i teksturami różnych obiektów. Ray tracing renderuje fizycznie dokładne efekty świetlne, symulując zachowanie promieni światła w wirtualnej scenie.
Ray tracing symuluje zjawiska świetlne, ale zamiast zaczynać od źródła światła, działa wstecz, od punktu widzenia obserwatora. Technologia śledzi promień światła od miejsca, które widzimy (np. od piksela na ekranie), z powrotem do źródła światła, analizując przy tym interakcje, jakie ma po drodze. Światło przechodząc przez scenę, może się więc odbijać od jednego obiektu do drugiego (tworząc odbicia), być blokowane przez obiekty (tworząc cienie) lub przenikać przez obiekty przezroczyste i półprzezroczyste (tworząc załamania). Interakcje te są łączone, by wyświetlić na ekranie realistyczny obraz. Dlaczego promienie śledzone są od punktu widzenia obserwatora? Jest to znacznie bardziej wydajne niż śledzenie wszystkich promieni świetlnych emitowanych w różnych kierunkach z wielu źródeł.
Ray tracing a moc obliczeniowa
Dawniej śledzenie promieni było zarezerwowane dla aplikacji niedziałających w czasie rzeczywistym, czyli głównie wykorzystywało się ten efekt w grafice komputerowej do filmów i programów telewizyjnych, ale nawet wtedy wymagało to ogromnej mocy obliczeniowej, na którą stać było tylko największe studia. Dodatkowo proces ten był bardzo żmudny i czasochłonny. Śledzenie promieni było niedostępne dla gier właśnie ze względu na ograniczone możliwości sprzętowe komputerów – sprzęt po prostu nie radził sobie ze śledzeniem promieni w czasie rzeczywistym.
Było tak aż do momentu, gdy amerykańskie przedsiębiorstwo komputerowe NVIDIA wprowadziło na rynek karty graficzne RTX do komputerów stacjonarnych. Wykorzystywały one oddzielny blok funkcjonalny, zwany też rdzeniem RT, który został specjalnie zaprojektowany do obsługi śledzenia promieni w czasie rzeczywistym. Pierwszymi konsumenckimi kartami graficznymi, które wyposażono w rdzenie wspomagające ray tracing, były produkty z serii GeForce RTX 20 – 2080 i 2080 Ti. Pierwszą grą, która skorzystała z możliwości śledzenia promieni świetlnych w czasie rzeczywistym, był wydany w 2018 roku Battlefield V od Electronic Arts. Warto dodać, że konsole 9. generacji, czyli PlayStation 5, Xbox Series X i S również są wyposażone w komponenty przeznaczone do sprzętowego śledzenia promieni, z czego zresztą twórcy gier chętnie korzystają, czego przykładem mogą być między innymi Wiedźmin 3 i Cyberpunk 2077.
Ray tracing w bardzo dużym stopniu wpływa na wygląd gier. Należy jednak wspomnieć, że technologia ta wymaga bardzo wydajnego sprzętu. Proces symulacji promieni świetlnych, odbić, cieni i załamań światła w czasie rzeczywistym jest niezwykle zasobożerny, ponieważ komputer musi obliczać interakcje światła z obiektami w bardzo szczegółowy sposób. Tradycyjne karty graficzne nie są w stanie sprostać tym wymaganiom bez znacznych strat w wydajności.
Śledzenie promieni na tyle obciąża sprzęt, że na konsolach obecnej generacji jego włączenie zazwyczaj ogranicza płynność rozgrywki do 30 klatek na sekundę. Z podobnymi problemami borykają się także gracze pecetowi. Chociaż większość komputerów i laptopów gamingowych jest wyposażona w karty graficzne z rdzeniami RT, to w praktyce tylko najdroższe urządzenia są w stanie utrzymać stabilne 60 klatek na sekundę z ray tracingiem w wysokiej rozdzielczości. Dlatego też równolegle rozwijają się technologie – takie jak DLSS – zwiększające i ulepszające rozdzielczość za pomocą uczenia maszynowego.
Co daje ray tracing
Ray tracing w grach znacząco poprawia realizm wizualny poprzez dokładne odwzorowanie efektów świetlnych. Wpływa na:
- Realistyczne odbicia – generuje dokładne odbicia na powierzchniach, takich jak woda, szkło czy metal. Dzięki tej technologii możesz zobaczyć, jak otoczenie rzeczywiście odbija się w tych materiałach, co jest znacznie bardziej naturalne niż przy użyciu tradycyjnych technik renderowania.
- Dokładne cienie – pozwala na tworzenie bardziej realistycznych cieni, które zmieniają swoją ostrość w zależności od odległości od źródła światła. Dzięki temu gra zyskuje na głębi i dynamice.
- Lepsze załamania światła (refrakcje) – umożliwia precyzyjne symulowanie tego, jak światło przechodzi przez przezroczyste materiały, takie jak szkło czy woda, tworząc realistyczne efekty refrakcji.
- Globalne oświetlenie – światło odbite od jednego obiektu może wpływać na inne obiekty, co prowadzi do stworzenia bardziej naturalnego oświetlenia sceny. To zjawisko, zwane globalnym oświetleniem, sprawia, że świat wygląda bardziej realistycznie.
Path tracing – następca ray tracingu
Path tracing to bardziej zaawansowana forma ray tracingu, która działa na tej samej zasadzie, ale jest bardziej wszechstronna i dokładna. W path tracingu promienie światła mogą się odbijać wielokrotnie od powierzchni, zanim dotrą do kamery, co symuluje globalne oświetlenie i subtelne efekty świetlne (np. delikatne rozmycie światła po tym, jak przejdzie przez kilka powierzchni). Path tracing oblicza losowe ścieżki promieni, a następnie średnia wyników tych wielu ścieżek tworzy ostateczny obraz. Choć następca ray tracingu oferuje niesamowitą dokładność i realizm, jest znacznie bardziej wymagający obliczeniowo, co czyni go trudnym do zastosowania w czasie rzeczywistym. Są już jednak gry, które wykorzystują path tracing, a wśród nich Cyberpunk 2077, który otrzymał specjalną opcję Ray Tracing: Overdrive, która jest swoistym pokazem możliwości tej technologii.
Ray tracing coraz popularniejszy
Liczba gier obsługujących ray tracing stale rośnie. Praktycznie każdy nowy tytuł AAA, zarówno konsolowy, jak i pecetowy, ma w opcjach możliwość włączenia ray tracingu. Należy przyznać, że RT naprawdę robi różnicę i gry dużo zyskują dzięki tej technologii. Kiedy już raz poddasz się magii ray tracingu, to ciężko później wrócić do grania w gry wykorzystujące tradycyjne metody renderowania.