Jump to content

Ulepszony Silnik Graficzny


Recommended Posts

Wchodzimy w "Next Gen" wycofując stary silnik graficzny! Ustawienie launchera zostało przeniesione do ekranu Opcji, jako że chcemy, by testowało go więcej Tenno!

Ulepszony (wcześniej określany jako "Odroczony") został całkowicie przeprojektowany by uzyskać dokładniejsze odbicia i umożliwić użycie dynamicznych świateł i cieni w całej grze.

(Mrużąc oczy) Pomijając nasze krajobrazy, różnice między jedną a drugą klatką będą subtelne. Wypieczone odbicia w bardzo błyszczących podłogach Gazozo będą mniej zniekształcone. Migoczące odbicia na Warframe'ach nie będą już "wyskakiwać" przy przejściu między pokojami. Jest to zamierzone, ponieważ starannie przenosiliśmy nasze aktualizacje renderowania Ulepszonego do Starszego systemu renderowania. Nasze nieustanne ulepszenia statycznego, opartego na path tracingu (przyp. tłum. śledzenia ścieżki) oświetlenia, cubemap (przyp. tłum. map sześciennych) z rzutowaniem paralaksy, wolumetrycznych świateł, podświetlonej mgły, próbników oświetlenia postaci… działają całkiem nieźle w starym silniku graficznym i przez lata pozwalały nam dotrzymać kroku innym. Ale w starym systemie renderowania Eximus był to zawsze rażąco słaby punkt...

Nawiązując do Bene Gesserit z Diuny - „Jest coś, co nas przeraża": dynamiczne oświetlenie! Od premiery Warframe, ilość dynamicznych świateł, z których zwykle korzystaliśmy na klatkę utrzymywana była w niskich wartościach jednocyfrowych. Wasza broń, może latarka, może rzut umiejętności... wszystko inne było wstępnie przeliczone, zapisywane w teksturach (mapy oświetlenia) i chmurach punktów (próbniki światła), lub udawane przez "świecące sprite'y". Powód: dla każdego dynamicznego światła dodanego do klatki (*), stary silnik graficzny musiał rysować wszystko czego ono dotknęło ponownie. W małym korytarzu z kilkoma błyskami z luf Grineer, powodowałoby to znaczne zmiany złożoności renderowania… w otwartych lokacjach była to kompletna porażka - jeden wystrzał = rysuj całą dolinę od ponownie!!! Nie tylko miażdżąc GPU, ale także dławiąc CPU dodatkową pracą…

Wzmacnianie! Tutaj przoduje nasz nowy silnik graficzny. Rysuje on cechy sceny (kolory, połyskliwość, kształty) do buforów poza ekranem. Po tym poprawne dynamiczne oświetlenie kosztuje niewiele więcej, niż te straszne, świecące sprite'y z których korzystaliśmy w przeszłości. Dla cieni w czasie rzeczywistym, to co źródła światła "widzą" jest zapisywane w pamięci podręcznej i wykorzystywane ponownie, jeśli nic się nie zmieniło. Wszystkie próbniki oświetlenia i odbić są zapisywane w teksturze voxela kamery 3D i aplikowane w pojedynczym przejściu, którego koszt rośnie liniowo, proporcjonalnie do rozmiaru ekranu, bez ponoszenia ogromnych strat wydajności CPU i GPU by "rysować cały świat od nowa, wciąż i wciąż".

Pokażcie kwity! Eksperymentując z nowym silnikiem graficznym, pamiętajcie, że do czasu aż nie wycofamy starszego systemu i upewnimy się, że nowy będzie skalować się od wysokiej klasy komputerów przez konsole, aż po tostery i termostaty, naszym planem nie jest tylko ulepszenie dynamicznego oświetlenia gdziekolwiek się da. Latami tworzyliśmy zasoby, unikając dynamicznego oświetlenia, gdy tylko było można… ale jest pewna kategoria miejsc, do których możecie się udać i zobaczyć jak wiele ono zmienia: otwarte lokacje! W Vallis, na Równinach i w Dryfie nieostre, niedookreślone plamy cieni zostały zastąpione cieniami słonecznymi obliczanymi w czasie bardzo rzeczywistym! Subtelne w wielu pomieszczeniach, ale nie tutaj!


Korzystając z przydatnych Spojlerów, dlaczego nie przyjrzymy się niektórym zdjęciom przed i po?

 

Spoiler

CETUS PRZED:
Cetus_Before.thumb.png.75f437e5c682c54e5

CETUS PO:
Cetus_After.thumb.png.ebee7f04be26407854

RÓWNINY EIDOLON PRZED:
POE_Before.thumb.png.c16332cb72ab8dcbe99

RÓWNINY EIDOLONS PO:
POE_After.thumb.png.d2994b70044943432751

 


Toast. Choć naszym zamiarem jest wycofanie starego systemu, chcemy zachować wydajność i skalowalność jako priorytet w nowym silniku graficznym. Chociaż nowy system jest drastycznie szybszy w przypadku dynamicznego oświetlenia i cieni, to nie są "darmowe obiady" (**) w żadnym systemie i będziemy czujnie dodawać nowe opcje zapewniające elastyczność w dostosowania wydajności nowego systemu dla najlepszego możliwego doświadczenia Warframe.

RTX ON? Co dalej? Wycofanie starego systemu pozwoli nam skupić się na jednym. Otworzy to drzwi do przyszłych eksploracji nowych technologii. Dużo dzieje się z ray-tracingiem i renderowaniem wspartym przez uczenie maszynowe... zostańcie z nami!

(*) Technicznie stary system rysował dynamiczne światła w partiach po 3. Więc złożoność sceny CPU/GPU podwajałaby się co 3 światła.

(**) Cienie w czasie rzeczywistym wymagają renderowania sceny z "perspektywy światła". Jest to znacznie szybsze niż główna scena, ale to dodatkowe obciążenie GPU do uwzględnienia.

Link to comment
Share on other sites

Powiem tak.

Różnice są naprawdę subtelne, poza cieniowaniem i oświetleniem tak naprawdę nadal dużo brakuje i nadal jest to stary, dziurawy jak ser szwajcarski silnik graficzny, który przez swoje niedociągnięcia pozwala nam wpadać pod mapy, wychodzić poza nie. Wciąż stare mapy, wciąż stare tekstury, wciąż stare błędy nienaprawione od wielu lat.

Naprawdę rozumiem chęć tworzenia czegoś na własnym silniku i chęć pisania kodu na czymś co się zna ale... DE kurde... czy nie byłoby wam dużo lepiej przejść na najnowszą obecnie wersję Unreal Engine? 4.25 chyba obecnie jest w użytkowaniu. Zapowiedziany już jest UE5, na konsole nowej generacji, który rozwala konkurencję tak jakością graficzną jak i techniczną samego silnika. UE to w rękach sprawnych koderów jak i grafików narzędzie o istnie nieskończonym potencjale, gdzie tworzenie nowych rzeczy trwa banalnie krótko w porównaniu z tym co obecnie widzimy. Nowy kontent byście tworzyli migiem, grę rozwijalibyście o wiele szybciej i być może wreszcie byście zaczęli dotrzymywać swoich obietnic. Tworzenie modeli, teksturowanie, nadawanie fizyki nowym obiektom w UE jest proste, głównym problemem dla was byłoby tylko przełożenie obecnej gry a nowy silnik ale potem już by było z górki.

Zawsze znajdzie się jakiś palant co napisze "jak ty taki mądry to zrób lepiej" - nie, ja nie zrobię lepiej, bo się na tym nie znam. Ale oczy mam i widzę co i jak.
I tu pojawia się kolejny palant, co napisze "nie znasz się a się wypowiadasz" - tak, wypowiadam się bo mam do tego prawo i wcale nie muszę się na czymś znać by mieć o tym własne zdanie. Mam takie samo prawo do krytyki jak "znafcy tematu". Jak powiedział ktoś mądry "nie każdy kierowca musi być od razu mechanikiem".

Mam kilku znajomych, którzy siedzą na silnikach UE i którzy tworzą w nich cuda. Każdy, kto ma jakiekolwiek pojęcie o tym jak obsługiwać ten już gotowy silnik graficzny potwierdzi, że jest to jeden z najbardziej intuicyjnych, najprostszych w obsłudze, najbardziej elastycznych a także najładniejszych silników do tworzenia gier.

I dlatego uważam, że trzymanie się swojego silnika tylko dlatego, że się go stworzyło jest błędem, tym bardziej, że ten silnik jest dziurawy i łatanie go pochłania czas, czas który można byłoby poświęcić na tworzenie nowych rzeczy i spełnianie obietnic. DE nie zamierza stworzyć Warframe 2 ani nie zamierza tworzyć zupełnie nowych innych gier, jedynie utrzymuje się z Warframe i tworzenia do niego kontentu. Skoro Warframe jest jedynym dzieckiem przynoszącym temu studiu pieniądze/zysk/utrzymanie, to DE powinno poważnie zastanowić się nad ułatwieniem sobie zadania w przyszłości, podczas tworzenia nowych rzeczy.

Tyle ode mnie, pewnie i tak nie dotrze to do żadnego z pracowników studia.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...