Variable Rate Shading wkracza do DirectX 12

Variable Rate Shading wkracza do DirectX 12

Autor: Krzysztof Sulikowski

Opublikowano: 3/18/2019, 9:48 PM

Liczba odsłon: 3127

Microsoft ogłosił dzisiaj, że DirectX 12 jest pierwszym graficznym API, który oferuje szerokie wsparcie sprzętowe dla technologii Variable Rate Shading. Jest to nowe, potężne API, które pozwala deweloperom wykorzystywać GPU w bardziej inteligentny sposób, dzięki czemu grafika renderuje się szybciej przy niezauważalnych gołym okiem różnicach w cieniowaniu poszczególnych obszarów. Poznajmy szczegóły tej implementacji.

Shadery wywoływane są do obliczania (opisania) koloru każdego piksela na ekranie. Częstotliwość cieniowania (shading rate) odnosi się do rozdzielczości, w której pracują te shadery i która jest inna niż rozdzielczość całego ekranu. Wyższa częstotliwość cieniowania oznacza wyższą rozdzielczość wizualną, ale kosztem zwiększonego użycia GPU. Niższa częstotliwość cieniowania daje wynik odwrotny - niskie zużycie procesora graficznego i niższą jakość obrazu. Tradycyjnie, gdy deweloper wybiera częstotliwość shadingu dla gry, odnosi się ona do wszystkich pikseli w klatce. Jest z tym jednak problem - nie wszystkie piksele tworzone są na równi.

Variable Rate Shading (VRS) pozwala deweloperom selektywnie zmniejszyć częstotliwość cieniowania w obszarach klatki, w których zmiana ta nie wpłynie na jakość wizualną, a to poprawia wydajność gry. Większa wydajność to więcej klatek na sekundę i możliwość renderowania lepszej grafiki przez słabszy sprzęt. Co więcej, VRS pozwala też niejako równać w górę: zwiększając częstotliwość cieniowania w obszarach, które liczą się najbardziej, można osiągnąć lepszą jakość wizualną w grach. VRS powstał z myślą o deweloperach i możliwości integracji z ich silnikami.

Variable Rate Shading

Microsoft wyjaśnił kilka technik, na podstawie których deweloperzy mogą włączyć VRS. Zostały też pokazane przykłady zastosowania API w grach od Firaxis, z którym Microsoft współpracował, by ukazać działanie VRS na istniejących kartach Nvidii. Na zrzutach ekranu, które tu widzimy, jakość grafiki nie została w widoczny sposób pogorszona, a jednak odnotowano wzrost fps-ów nawet o 20%.

VRS wspiera dostępny dziś na rynku sprzęt Nvidii, a także nadchodzący sprzęt Intela. Producent procesorów eksperymentował już z VRS na prototypowych modelach Gen11, które mają wejść na rynek w tym roku. Sprzęt ten będzie można zobaczyć na stoisku Intela na GDC 2019 oraz na specjalnej, poświęconej temu sesji. Wsparcie dla VRS w swoich grach/silnikach zapowiedziało też kilku ważnych producentów, w tym Unity, Activision, Ubisoft, Epic Games, Playground Games, Turn 10 Studios czy 343 Industries.

Jak wykorzystać Copilot w codziennej pracy? Kurs w przedsprzedaży
Jak wykorzystać Copilot w codziennej pracy? Kurs w przedsprzedaży

Wydarzenia