artykuły

Variable Rate Shading – zgrubne cieniowanie w DirectX i nowych konsolach

31
16 kwietnia 2020, 14:01 Mateusz Brzostek

Przyszłość oszczędnego cieniowania

Sądzimy, że zgrubne cieniowanie jest eleganckim i wszechstronnym rozwiązaniem, które z czasem stanie się równie powszechne, co wygładzanie krawędzi. Ponieważ potencjalne korzyści są umiarkowane, popularyzacja tej techniki zajmie zapewne sporo czasu. Zgrubne cieniowanie będzie w przypadku wielu gier konieczne, żeby osiągnąć wymaganą płynność na konsolach nadchodzącej generacji – Xbox Series X oraz PlayStation 5. Twórcy gier powinni dość szybko się z nim oswoić.

W graniu pecetowym należy oczekiwać umiarkowanych zysków. Zademonstrowane do tej pory implementacje VRS pozwalają polepszyć płynność o ok. kilka-kilkanaście procent. W Wolfenstein II: The New Colossus wydajne desktopowe karty graficzne zyskują mniej niż 10%; w najbardziej sprzyjających warunkach to ok. 30%.

Sądzimy, że zgrubne cieniowanie będzie najkorzystniejsze dla zintegrowanych GPU i konsol. Użytkownicy jednych i drugich do tej pory nie wymagali najwyższej jakości grafiki i byli skłonni zgodzić się na rozdzielczość mniejszą niż natywna rozdzielczość ekranu. VRS może pozwolić na zwiększenie rozdzielczości do natywnej i zrezygnowanie z kiepskich technik skalowania rozdzielczości (rozciąganie z wyostrzaniem). VRS można stosunkowo łatwo i z korzyścią połączyć z różnymi rodzajami wygładzania krawędzi albo rekonstrukcji temporalnej. Ta technika może działać i przynosić wymierne korzyści na sprzęcie z całego spektrum wydajności. Jednocześnie nie wymaga znaczącego zwiększenia nakładu pracy na przygotowanie treści gry. To wszystko powinno przyspieszyć jej zaadaptowanie – na przeszkodzie stoi tylko to, że stosunkowo niewiele z już wykorzystywanych GPU obsługuje VRS. Laptopy z Ice Lake upowszechniają się powoli, a ich układy graficzne obsługują VRS tylko w trybie mapy ekranu. Obecne układy graficzne AMD (również te wbudowane w laptopowe Ryzeny 4000) nie obsługują VRS, a high-endowe karty graficzne Nvidii najmniej potrzebują przyspieszenia, jakie może dać VRS. Popularyzacja VRS zapewne ruszy z kopyta dopiero po debiucie nowych konsol – te bez wątpienia szybciej zdobędą znaczący udział w rynku, niż jakiekolwiek nadchodzące wbudowane układy graficzne.

VRS może też mieć świetlaną przyszłość w urządzeniach przenośnych, na przykład smartfonach. Gęstość pikseli na ekranach smartfonów jest bardzo duża. Ząbkowane krawędzie są bardzo łatwo zauważalne dla użytkownika przyzwyczajonego do perfekcyjnie wyrenderowanych ekranów interfejsu użytkownika, ale zmniejszona rozdzielczość cieniowania może pozostać niezauważona. VRS jest też idealnym środkiem na zaoszczędzenie przepustowości pamięci i oszczędzenie energii, co jest niezwykle ważne w smartfonach. Na razie jednak nie wiadomo, kiedy ARM, Imagination Technologies, Qualcomm czy Apple zamierzają umożliwić sprzętowe przyspieszanie VRS.

Dalszy ciąg

W drugiej części tego artykułu opowiemy o pokrewnych sposobach na renderowanie nie więcej, niż potrzeba, a więc o:

  • rasteryzacji z mniejszą rozdzielczością
  • renderowaniu dopasowanym do uwagi obserwatora
  • renderowaniu dopasowanym do kształtu ekranu
  • zastosowaniach tych technik w wirtualnej rzeczywistości

Przy okazji powiemy o cechach ludzkich oczu i zmysłu wzroku, które wpływają na techniki renderowania.

Strona:
Promilus1984Zobacz profil
Poziom ostrzeżenia: 0%
Promilus19842020.04.16, 15:25
12#1
Kiedyś to były 'sztuczki' w sterownikach do uzyskania większej ilości FPS, które po odkryciu raczej wkurzały graczy niż cieszyły. Teraz są 'techniki' jak VSR czy DLSS, które 'oszczędzają' i dają 'prawie' tą samą jakość, techniki które znajdują poklask. Smutny czas gdy pójście na daleko idące kompromisy jest 'sexy' ;) Już nie najmocniejsza karta tylko 'najsprytniejsza' ...
Edytowane przez autora (2020.04.16, 15:26)
Adi-CZobacz profil
Poziom ostrzeżenia: 0%
Adi-C2020.04.16, 15:28
16#2
Rozbraja mnie idea rysowania czegoś gorzej, bo to coś jest w ruchu i 'i tak tego dobrze nie widać'. To jest jakby zaprzeczenie idei gier jako rzeczy które z definicji są obrazem ruchomym, i powinny być siłą napędową branży display'owej pchając ją w stronę lepszego odwzorowania ruchu, płynności itd, szczególnie że tu jest co poprawiać. A zamiast tego, w typowym duchu współczesności mamy dążenie do pogarszania rzeczy które dobre już były, i teraz trzeba je zepsuć, mamy więc technikę która jeszcze tę ostrość w ruchu (już i tak beznadziejną w lcd/oled) pogarsza, i dodatkowo zdaje się takie podejście promować jako nowoczesne. Takie czasy!
Tak, zdaję sobie sprawę że to nie całość vrs, ale ta akuat część techniki jest piramidalnie głupia.

Przez ostatnie 10-12lat, od definitywnego końca ery crt, praktycznie nikt, czy na oled czy na lcd, nie widzi w ruchu ostrego obrazu, chyba że ew. w 120hz (szczególnie z dobrym strobe) albo w vr low persistence. Gry w 30/60fps to totalny blur na ekranie w szybszym ruchu.
(chyba że od biedy tv ma pwm, np. 120hz, wtedy ma zwielokrotnione, choć ostre klatki nakładające się na siebie- więc też źle)

Od tych nastu lat płaczę widząc jak- na początku ery lcd, a więc wyświetlania obrazu w sposób ciągły, więc totalnie zblurowany- jak cofnęliśmy się w stos. do crt z ostrością obrazów ruchomych ze 100% podobieństwa do obrazu statycznego, do jakichś 30%, i tak stoimy, nic w tym temacie nie robimy.
Ba, gorzej- przeszliśmy z powszechnych crt tv 480/576 na tv lcd 720, na 1080, na oled 4k, teraz przechodzić pomału będziemy na 8k, ale w ruchu całe te dodatkowe detale i tak znikają. Wszystko wygląda ładnie dopóki się nie rusza, ale porusz kamerą i masz smugę na ekranie, i te wszystkie dodatkowe 'k' przestają mieć znaczenie w czymkolwiek innym niż hud/postać naokoło której porusza się kamera, bo ona jest cały czas w środku ekranu, nie rusza się. Światy gier mają coraz lepsze tekstury, powierzchnie, detale, ale rusz kamerą i zapomnij że te detaliki w ruchu dojrzysz. Musisz jak 80latek stanąć, poprawić okulary i przypatrywać się ekranowi statycznemu. To mi nie brzmi jak granie. Wszelkie liście, kwiaty, trawa, kora drzew, to wszystko co wygląda super na promocyjnym skrinszocie- znika w rozmytej smudze, tracąc tak z 75% detali. A w szybkim ruchu to wręcz znika po całości.

Więc oto powstaje technika która jeszcze dodatkowo pogorszy obraz ruchomy, bo fak it, i tak nikt nie zauważy, a będzie 3fps więcej. I jak już dobrniemy do tv wyświetlających 120hz, mogących ostro oddać obraz w ruchu, i silników osiągających tyle klatek, to okaże się że doczłapaliśmy się tam kosztem cięcia detali gry i nic z tego nie zyskamy. Teraz obraz generowany w grze sam w sobie jest rozmyty!

Tak, wiem że w innych przypadkach (cutsceny z dof- tło bez sensu renderować w 100% jakości) ma ta technika sens, ale pogarszanie i tak już złego ruchu to jakieś absurdalne, błędne koło.

Powinniśmy iść w silniki gier które łatwo wyciągają 90-120hz, bo wtedy można bez martwienia się o flicker błyskać obraz przez 10-20% czasu klatki co likwiduje blur, i właśnie umożliwia dostrzeżenie tego co jest w ruchu, co jest zaprzeczeniem tej tu cudownej techniki, ale nie, pogorszmy to coś jeszcze bardziej, żeby zyskać 3% wydajności...
Taki postęp!
Edytowane przez autora (2020.04.16, 15:35)
taithZobacz profil
Poziom ostrzeżenia: 0%
taith2020.04.16, 15:44
10#3
Trzeba to zobaczyć w akcji, bo jeśli to wygląda jak slider na 4 stronie, to podziękuję, postoję.
PS: doszliśmy do czasów potwornej ilości mocy obliczeniowej od czasów Atari i Commodore. To co wtedy twórcy wyczarowywali sprytną matematyką jest cudem, w porównaniu do obecnego: wrzućmy wszystko do bezdennej studni GPU...
Gdzie wynajdowanie sprytnych sposobów na ulepszenia jakości przy jednoczesnym zmniejszeniem narzutu sprzęt? Czy jesteśmy skazani na 'prezenty' od Nvidii, gdzie tesselacja betonowego gruzu ma setki tysięcy poligonów?
Edytowane przez autora (2020.04.16, 15:53)
AbdulahZobacz profil
Poziom ostrzeżenia: 0%
Abdulah2020.04.16, 16:17
Promilus1984 @ 2020.04.16 15:25  Post: 1240083
Kiedyś to były 'sztuczki' w sterownikach do uzyskania większej ilości FPS, które po odkryciu raczej wkurzały graczy niż cieszyły. Teraz są 'techniki' jak VSR czy DLSS, które 'oszczędzają' i dają 'prawie' tą samą jakość, techniki które znajdują poklask. Smutny czas gdy pójście na daleko idące kompromisy jest 'sexy' ;) Już nie najmocniejsza karta tylko 'najsprytniejsza' ...

No jasne lepiej olać optymalizacje, nie stosować sztuczek i nie oszczędzać mocy obliczeniowej, która może być ukierunkowana na inne, ważniejsze aspekty grafiki/gry.

Przecież tu nie chodzi o to, żeby te techniki stosować absolutnie wszędzie i pogarszać jakość grafiki, tylko, żeby stosować tam gdzie to ma sens.
Edytowane przez autora (2020.04.16, 16:21)
mbrzostekZobacz profil
Poziom ostrzeżenia: 0%
Autor publikacjimbrzostek2020.04.16, 16:50
Promilus, nie można wszystkiego wrzucić do wora z napisem 'podłe oszustwa'! Jeśli nie będziemy renderować obiektów poza polem widzenia (np. za plecami gracza), to już jest podłe oszustwo, czy sprytna optymalizacja? A SSAO z widocznymi artefaktami na krawędzi ekranu - oszustwo czy optymalizacja? Jeśli pierwsze jest sprytne i godne pochwały, a drugie jest be, to gdzie postawimy granicę – 5° poza polem widzenia? 10°? 180°? A mipmapy i ubisoftowe drzewa - gdzie jest granica między 'OK' a 'brzydkie'?

Jak sądzę, nie ma już do odkrycia zbyt wielu efektywnych sztuczek w rodzaju pierwiastkowania na skróty. Przynajmniej VRS jest w bardzo dużym stopniu pod kontrolą artysty (w przeciwieństwie do np. dynamicznego skalowania rozdzielczości na konsolach), a przykład Wolfensteina II pokazuje, że nawet prymitywniejszą metodą da się to zrobić dobrze i ładnie. Już to stawia VRS bliżej narożnika sprytnych i godnych podziwu sztuczek, niż bardzo wiele innowacji z ostatnich lat.
Edytowane przez autora (2020.04.16, 16:51)
KrisolZobacz profil
Poziom ostrzeżenia: 0%
Krisol2020.04.16, 17:23
-8#6
Promilus1984 @ 2020.04.16 15:25  Post: 1240083
Kiedyś to były 'sztuczki' w sterownikach do uzyskania większej ilości FPS, które po odkryciu raczej wkurzały graczy niż cieszyły. Teraz są 'techniki' jak VSR czy DLSS, które 'oszczędzają' i dają 'prawie' tą samą jakość, techniki które znajdują poklask. Smutny czas gdy pójście na daleko idące kompromisy jest 'sexy' ;) Już nie najmocniejsza karta tylko 'najsprytniejsza' ...

DLSS 2.0 daje lepszą jakość od natywnej rozdzielczości. :D
Edytowane przez autora (2020.04.16, 17:23)
Promilus1984Zobacz profil
Poziom ostrzeżenia: 0%
Promilus19842020.04.16, 17:50
@Krisol - kto cię tak okłamał? https://www.youtube.com/watch?v=eS1vQ8JtbdM
jak dla mnie bardzo dyskusyjna sprawa, jeśli włączam max to ma być max zawsze i wszędzie, a tu się okazuje, że coś wygląda lepiej, ale ogółem jednak mimo wszystko w większości gorzej i jeszcze dochodzi np. migotanie krawędzi. A to co gubiło się w DLSS1.x w 2.0 po prostu jakby spróbowali zrobić 'sharpen' ... też mi kurde osiągnięcie. Czasem to wyostrzenie jest przejaskrawione, czasem jest granulacja. Tak, zyskujesz FPS, ale wcale NIE zyskujesz jakości.
@mbrzostek - nie renderowanie tego czego i tak nie widać jest prawie od początku grafiki 3D. Renderowanie czegoś gorzej zakładając, że gracz i tak nie zauważy różnicy bo to jakiś mało ważny detal, albo akcja za szybka to zupełnie inna sprawa. Akurat w przypadku wolfa czy control widać różnice. W starszej wersji większe, w nowszej mniejsze, ale i tak widać. Ktoś powie - ale to tylko na screenshotach i w przybliżeniu. No nie po to się kupuje duże TV 4k żeby detale ucinać i próbować rekonstruować korzystając z ML. Nie ma takiej sieci neuronowej która w 100% odzyska to co jest utracone przez rendering w niższej rozdzielczości. Znacząca większość rozwiązań opracowywanych do tej pory to były rozwiązania W ŻADEN SPOSÓB nie wpływające na jakość finalnego obrazu. Np. HyperZ od ATI czy rendering kafelkowy z Kyro - zwiększanie wydajności odbywało się poprzez usunięcie dość wcześnie z obliczeń to czego i tak nie widać. Zero, totalne zero wpływu na jakość obrazu, a w zamian przyrost wydajności. Potem pojawiła się teselacja. Znów - model o złożonej geometrii zwijało się w prostszy + procedury i mapy wysokości pozwalające odtworzyć oryginalną szczegółowość, ale z oszczędzeniem pamięci (i przepustowości pamięci) - wzrost wydajności - tak, spadek jakości - nie. Nikt mi nie wmówi, że w proponowanych obecnie technikach NIC się nie gubi. Coś się jednak gubi. To JEST kompromis. Czemu? Proste, bo karty graficzne są za słabe a mocniejsze nie będą. Charakterystyczne do ubiegłych dekad znaczne wzrosty wydajności między generacjami są już dawno za nami. Ja rozumiem DLACZEGO się tak dzieje i doceniam, że mimo wszystko firmy próbują coś robić by było lepiej. Ostatecznie jednak problem 'muru' we wzroście wydajności nie będzie rozwiązany żadnymi DLSS i VRS! Potrzebne jest zupełnie nowe podejście. I na to czekam, a nie popierdółki.
Edytowane przez autora (2020.04.16, 17:53)
DeniryerZobacz profil
Poziom ostrzeżenia: 0%
Deniryer2020.04.16, 18:09
Krisol @ 2020.04.16 17:23  Post: 1240108
Promilus1984 @ 2020.04.16 15:25  Post: 1240083
Kiedyś to były 'sztuczki' w sterownikach do uzyskania większej ilości FPS, które po odkryciu raczej wkurzały graczy niż cieszyły. Teraz są 'techniki' jak VSR czy DLSS, które 'oszczędzają' i dają 'prawie' tą samą jakość, techniki które znajdują poklask. Smutny czas gdy pójście na daleko idące kompromisy jest 'sexy' ;) Już nie najmocniejsza karta tylko 'najsprytniejsza' ...

DLSS 2.0 daje lepszą jakość od natywnej rozdzielczości. :D

Chyba na statycznych zrzutach ekranu z maksymalnym sharpeningiem ustawionym w OSD monitora :E
Edytowane przez autora (2020.04.16, 18:09)
nojeZobacz profil
Poziom ostrzeżenia: 0%
noje2020.04.16, 21:14
Promilus1984 @ 2020.04.16 15:25  Post: 1240083
Kiedyś to były 'sztuczki' w sterownikach do uzyskania większej ilości FPS, które po odkryciu raczej wkurzały graczy niż cieszyły. Teraz są 'techniki' jak VSR czy DLSS, które 'oszczędzają' i dają 'prawie' tą samą jakość, techniki które znajdują poklask. Smutny czas gdy pójście na daleko idące kompromisy jest 'sexy' ;) Już nie najmocniejsza karta tylko 'najsprytniejsza' ...


Dałbym ci 1000 plusów gdybym mógł
KsiądzZobacz profil
Poziom ostrzeżenia: 0%
Ksiądz2020.04.16, 23:59
'DLSS 2.0 daje lepszą jakość od natywnej rozdzielczości.'

Tu kończy się rozum i zaczyna magia PR-u...
Funkcja komentowania została wyłączona. Do dyskusji zapraszamy na forum.
6