Variable Rate Shading poderá ser suportado pelos GPUs Navi

A tecnologia é já suportada pelos novos GPUs Nvidia, mas o seu suporte em GPUs AMD será novidade. A tecnologia permite ganhos consideráveis de performance!

O grafismo actual distingue-se do que existia antigamente pela gigante aplicação de pixel shaders. Basicamente cada pixel é calculado aplicando-se uma série de variáveis de cena que lhe definem a sua cor, não se limitando assim o pixel a ter a cor da textura que lhe corresponde. Tal é o que permite efeitos de reflexo, de brilho, de vidro, rugosidade, desfoque, etc.

Os pixels shaders tornaram-se basicamente um standard e actualmente são calculados em praticamente todos os pixels da imagem, sendo assim das operações mais onerosas a nível de custo de processamento.

No processamento standard o processamento é feito ao pixel, e cada pixel possui o seu efeito individual. Mas a tecnologia VRS, que aparece agora numa patente AMD, e que se acredita possa vir a ser implementado já nos GPUs Navi, permite simplificações muito grandes ao processamento, ao permitir o uso de Adaptive Shading, Content Adaptive Shading (CAS), e Motion Adaptive Shading (MAS). Esta é uma tecnologia criada e patenteada pela Intel, que teve nas Touring uma variação registada pela Nvidia e agora uma nova variante patenteada pela AMD.

.



Basicamente, sem a tecnologia, todo o ecrã era processado numa escala 1×1, ou seja com o calculo do shader a ser realizado a cada pixel, mas a realidade é que tal não se revela completamente necessário. Na imagem de cima temos um exemplo da Nvidia que mostra como o VRS pode ser aplicado a uma imagem sem que tal tenha implicações no impacto visual.

O jogo em causa é de automóveis, e ele mantêm o cálculo 1×1 em toda a zona da zona de horizonte e automoveis. São estas as zonas para onde o utilizador mais olha durante o jogo, e aquelas que, por serem as mais estáticas, mais justifica manter.

Mas a movimentação rápida da imagem não justifica que tal se mantenha igual no resto da imagem. No cenário lateral, o cálculo 2×1, ou seja em conjuntos de 2 pixels alinhados verticalmente pode ocorrer. Tal calculo é imperceptível ao olho pelo movimento rápido da imagem, poupando cálculo.



Da mesma forma a zona lateral onde se encontra o carro pode ser calculada em conjuntos de 2×2 pixels. Trata-se da textura da estrada pura e simples, pelo que a precisão reduzida não traz consequências de maior.

Da mesma forma, pela deformação de texturas na parte inferior do ecrã que acabam esticadas, tem toda a lógica que se possa fazer um processamento em conjuntos e 4×4 pixels nos cantos e 4×2 alinhados verticalmente, na zona mais central.

Naturalmente o resultado visual não é igual, mas as diferenças podem chegar a ser muito pouco perceptíveis. Acima de tudo a mesma revela-se uma forma de poupar processamento precioso para jogos VR, que podem desta forma, muito mais facilmente, duplicar os fotogramas sem um impacto demasiadamente perceptível na resolução ou nos visuais. Associado a Eye tracking o jogo pode mesmo manter a qualidade máxima nas zonas para onde o olho está virado, removendo qualidade nas zonas que estão forçosamente desfocadas, e tudo sem que tal seja perceptível ao utilizador.

Mas o VR não é a única utilização para esta tecnologia, que pode também ser aplicada aos jogos tradicionais. Wolfenstein II: The New Colossus é um jogo que implementa o uso de CAS e apresenta ganhos de performance que na variante do CAS da Nvidia se revelam ser de 7% no máximo. No entanto, este ganho variará de jogo para jogo dependendo da complexidade e quantidade de shaders aplicados a cada pixel.