Grupa deweloperów udostępniła projekt o nazwie QUAKE II PATHTRACED lub Q2VKPT. Jest to silnik id Tech 2 z gry QUAKE II z 1997 roku, wzbogacony o ray-tracing. Innymi słowy, deweloperzy zaimplementowali w nim każde możliwe oświetlenie: bezpośrednie, rozproszone, odbite i załamane (direct, scattered, reflected and refracted). Warto nadmienić, że aby to osiągnąć skorzystano z interfejsu Vulkan oraz projektu Q2PRO.
Krótko o id Tech 2
Chciałbym tutaj krótki omówić silnik id Tech 2. Jego autorami byli deweloperzy John Carmack, John Cash, i Brian Hook. Silnik oferował pełną sprzętową obsługę grafiki, z wykorzystaniem OpenGL. Dodatkowo podzielono niektóre komponenty na dynamicznie ładowane biblioteki. Umożliwiło to niezależne ładowanie oraz odłączanie poszczególnych bibliotek. Dodatkowo silnik wykorzystywał tzw. Lightmapy. Były to prerenderowane powierzchnie map bitowych, zawierające różne poziomy jasności. Przechowywano je w pamięci podręcznej do późniejszego wykorzystania w konkretnych wirtualnych scenach.
A teraz troszkę o Q2VKPT
Q2VKPT jest to projekt autorstwa Christophera Schieda, napisany w celu potwierdzenia wyników badań nad grafiką komputerową w grze. Kod zawiera 12 tysięcy linii i zastępuje całkowicie oryginalne źródła gry Quake II. Jak wspomnieliśmy na początku, deweloperzy zaimplementowali w nim każde możliwe oświetlenie: bezpośrednie, rozproszone, odbite i załamane (direct, scattered, reflected and refracted). Prócz wspomnianego ray-traycingu, gra wykorzystuje także technikę adaptacyjnego filtrowania obrazów (an adaptive image filtering technique). Funkcja ta inteligentnie śledzi zmiany w oświetleniu sceny, aby móc wykorzystać te informacje przy następnym renderowaniu.
Jak widzimy na załączonym filmie tytuł wygląda nieprawdopodobnie. Nie jest to już tak ciemna plama, jaka była do tej pory. Wiele elementów jest teraz o wiele jaśniejszych, do tego dochodzą odbicia światła na żywo ze ścian i podłóg. Wystrzelony pocisk rozjaśnia powierzchnię, przelatując nad nią. Wybuchy robią dokładnie to samo.
Zespół deweloperów QUAKE II PATHTRACED wyjaśnia, że implementacja dużej liczby funkcji ray-tracingu była w miarę prosta. Wszystko dzięki znajomości silnika oraz samej gry. Co ciekawe, Christoph Schied dodaje, że gry takie jak Battlefield V wykorzystują jedynie cząstkę możliwości ray-tracingu. W dużej mierze nadal opierają się na rasteryzacji. Jest to spowodowane bardzo skomplikowaną budową i kwestiami wydajnościowymi.
Tutaj znajduje się instrukcja, wyjaśniająca jak uruchomić grę: http://brechpunkt.de/q2vkpt/.
[…] NVIDIA udostępniła demo Quake II RTX. Pokazowa gra została oparta na projekcie QUAKE II PATHTRACED lub jak to wolą niektórzy Q2VKPT. Jest to silnik id Tech 2 z gry QUAKE II z 1997 roku, wzbogacony […]
[…] na GitHubie z okazji 21 lecia gry Quake II. Warto nadmienić, że obecnie istnieje także projekt QUAKE II PATHTRACED aka Q2VKPT. Tutaj prócz obsługi interfejsu Vulkan, mamy jeszcze wsparcie dla […]