Technologia Unlimited Detail - Carmack widzi przyszłość, Notch zarzuca oszustwo AKTUALIZACJA: Twórcy odpowiadają
W ciągu ostatnich dni internet obiegł film z prezentacją technologii mającej poprawić grafikę w grach. Nie pozostał on bez komentarza ze strony twórców gier. AKTUALIZACJA: Studio Euclideon odpowiedziało na zarzuty.
Jeśli nie widzieliście, rzućcie okiem:
Euclideon, firma odpowiedzialna za tę technologię, założyła, że nie ma sensu stosowanie coraz większej ilości wielokątów, by tworzyć obiekty 3D. Obecny sprzęt bez trudu je wyświetla, ale daleko im do realistycznego wyglądu. Oprócz tego są jeszcze voxele (ang. volumetric pixel, czyli piksel przestrzenny) i ray tracing (śledzenie promieni) - technologie dające lepsze efekty, ale wymagające mocnego sprzętu. Firma na swojej stronie i w filmiku przedstawia czwartą metodę - Unlimited Detail opartą na bardzo małych cząstkach, z których budowane byłyby obiekty. Zaś silnik działałby nieco jak wyszukiwarka - pokazując tylko te elementy, które gracz widzi, gdy patrzy w ich kierunku. W ten sposób ich prezentacja miałaby działać na jednordzeniowym komputerze bez karty graficznej. Ponadto technologia pozwalałaby na przetwarzanie polygonów w UD, więc animatorzy i graficy 3D nie musieliby się niczego uczyć od nowa. A przy tym następowałoby to z imponującym przelicznikiem 64 atomów na milimetr sześcienny.
Samo określenie w filmie nie pada, ale Unlimited Detail przypomina w założeniach technologię sparse voxel octree (dosłownie: rzadko rozsiane voxele w strukturze drzewa ósemkowego), czyli tworzenia modeli z uporządkowanych zbiorów bardzo małych voxeli. Wyświetlanie tylko tego co gracz widzi z kolei podobne jest do technologi ray tracing opierającej się na analizowaniu tylko tych promieni światła, które trafiają bezpośrednio do obserwatora. Jeśli coś nadmiernie uprościłem, to wybaczcie - nie jestem grafikiem 3D (a szkoda...).
Legenda branży, John Carmack z id Software, na swoim Twitterze wypowiedział się o tym z nadzieją:
Nawiązując do Euclideon, nie ma szans, by zrobić na tym grę na sprzęcie tej generacji, może za kilka lat. Produkcja będzie jednak trudnym zadaniem Carmack już wcześniej patrzył przychylnie w stronę technologii tego typu - w wywiadzie dla strony PC Perspective w marcu 2008 roku mówił:
Wydaje mi się, że z dużym prawdopodobieństwem w następnej generacji zaczniemy używać technologii śledzenia promieni (ray tracingu), która wykorzystuje specyficzne struktury danych, zamiast wielokątów. Tych używają wszyscy, ale stosowanie śledzenia promieni na nich jest bardzo drogie. Jest specyficzny format, którym już zacząłem się interesować i chcę udowodnić, że to możliwe w następnej generacji. Zakłada połączenie ray tracingu i sparse voxel octree (...)
Pracujemy w tej chwili nad Rage i kodem silnika id Tech 5 ale rozmawiałem z odpowiednimi osobami o tym, co się może w naszej branży wydarzyć i o celach, jakie postawimy silnikowi id Tech 6. Pewnie będzie wśród nich, a przynajmniej mam taką nadzieję, technologia ray tracingu połączona ze sparse voxel oxtree, ponieważ wydaje mi się, ze to jest klucz. W ten sposób będę mógł pokazać coś, z czym nie radzą sobie współczesne gry (...) Wygląda więc na to, że twórca Dooma interesował się podobnymi technologiami i nie uznaje ich za całkowitą stratę czasu. Być może trwają już prace nad id Tech 6, które teraz gwałtownie przyspieszyły.
Całkowicie odmienne zdanie ma Markus "Notch" Persson, twórca Minecrafta, który prezentację Euclideon podsumował na swoim blogu krótko:
Cóż, jest to oszustwo. Postanowił to jednak matematycznie udowodnić. Założył, że technologia zaprezentowana przez Euclideon to rodzaj renderowania voxeli oparty właśnie o sparse voxel octree. I jeśli, jak podają twórcy, wyspa na filmie ma kilometr kwadratowy powierzchni, a Notch założył, że wysokość przeciętnej wyspy to ok. 8 metrów, to jej objętość wyniesie 0,008 kilometrów sześciennych Jeśli w milimetrze sześciennym mieszczą się 64 atomy, to w sumie jest ich 512 000 000 000 000 000 (512 biliardów). Jeśli każdy taki atom (voxel) zajmuje jeden bajt, to mamy 512 petabajtów danych, czyli jakie 170 tysięcy dysków o pojemność 3 terabajtów każdy. A realnie potrzebny jest więcej niż jeden bajt, by nadać voxelowi kolor i oświetlenie, zaś sama wyspa jest wyższa niż 8 metrów, więc są to optymistyczne wyliczenia
Więc oczywiście nie jest to wykonane z niepowtarzalnych voxeli Notch zauważa, że w prezentacji masa struktur ma identyczny kształt i rozmiar, do czego technologia sparse voxel octree świetnie się nadaje - nie potrzebujesz różnych danych dla każdego listka, możesz korzystać z tych samych wielokrotnie, w ustalonych odstępach. Co wyjaśnia jak zbudowano tak wielką wyspę i że naprawdę nie zajmuje ona aż tyle pamięci. Ale jednocześnie jest to słabość silnika. Drugą jest animacja - nie ma dobrych i szybkich algorytmów pozwalających na deformację zbioru (chmury) voxeli w oparciu o siatkę szkieletową (skeletal mesh). Można obracać, skalować i prosto animować pojedyncze elementy, np. dając kawałek na kończynę, ale nie będzie to wyglądać tak dobrze, jak postacie oparte o polygony.
Persson stwierdza, że to faktycznie niezła technologia, ale firma zręcznie omija jej wady i sugeruje, że stworzyła coś zupełnie nowego. A wcześniej było już wiele projektów opartych o voxele, ray tracing też nowy nie jest. Oto kilka przykładów.
Chwalą się tym, jako czymś nowym i rewolucyjnym, bo chcą zdobyć fundusze. Ale to oszustwo. Nie ekscytujcie się zbytnio.
Albo raczej - ekscytujcie się voxelami, a nie gadaniną takich szarlatanów. Wygląda więc na to, że Notch nie neguje samej technologii, ale rzekomą innowacyjność i rewolucyjność filmu Euclideon. Niemnie te dwa głosy uznanych twórców sprawiają, że pomysł australijskiej firmy robi się coraz bardziej intrygujący. Ciekawe tylko, ile lat minie, zanim zobaczymy kolejny etap jego rozwoju. A jeszcze ciekawsze - jak firma odpowie na zarzuty twórcy Minecrafta?
AKTUALIZACJA: Długo nie czekaliśmy na odpowiedź studia, która pojawiła się w serwisie Kotaku:
Wydaje mi się, że muszę wyjaśnić - to nie jest produkt finalny. - powiedział Bruce Dell, szef Euclideon - ten sam, który entuzjastycznie opowiada o technologii w filmie:
Jesteśmy jak matka, która wstawiła do pieca ciasteczka i teraz wszyscy dookoła pytają "czy są już gotowe? czy już?". Dajcie nam czas, a ciastka wyjdą wyśmienite. Odpowiadając zaś na zarzuty Markusa Perssona:
To nie jest oszustwo. Jeśli byłoby, to znaczy, że przekonaliśmy australijski rząd, że to oszustwo, a przy okazji nasz zarząd i inwestorów. Dostaliśmy finanse od rządu, więc raczej Was nie oszukujemy. Nasze demonstracje są w czasie rzeczywistym. Wypowiedział się też w sprawie rzekomo bardzo trudnej animacji:
Mamy już możliwość robienia animacji. Ale trzeba włożyć w nie jeszcze wiele pracy. Mam nadzieję, że efekt Was usatysfakcjonuje, ale nie mamy zamiaru wypuszczać nic dopóki nie będzie w stu procentach gotowe. Bo jestem pewien, że gdybyśmy wypuścili go teraz, to nikt nie potraktowałby tego jako nieskończonego. Wszyscy krzyczeliby: "To nieskończone! Nie dadzą rady! Nie będzie mogło równać się z polygonami!" Bruce Dell konkluduje, że jeszcze wiele przed nimi:
Jesteśmy w środku trylogii i ta prezentacja była jak "Imperium Kontratakuje". Zniknęliśmy po ostatniej na długo i wszyscy myśleli "o już po nich". Więc pomyśleliśmy, że pokażemy nasze postępy i znikniemy znowu. Nie pokażemy się na nowo dopóki nie skończymy i nie będziemy w stanie pokazać pełnej prezentacji w czasie rzeczywistym Paweł Kamiński