Así logra NVIDIA que sus GPU ganen rendimiento en realidad virtual

Así logra NVIDIA que sus GPU ganen rendimiento en realidad virtual

Javier López

El mundo de la realidad virtual es totalmente distinto al mundo del PC cuando hablamos del gaming. La forma en la que trabaja la tarjeta gráfica para un mundo y otro es totalmente diferente y ello requiere una serie de técnicas específicas para cada uno de ellos. Debido a esto y a las peculiaridades de las gafas RV, NVIDIA ha trabajado en una tecnología que permite ganar rendimiento y ofrecer al mismo tiempo mejoras en la renderización y visualización general. Esto se conoce como Multi-Res Shading, pero ¿cómo funciona?

Aunque pueda parecer una tecnología nueva como tal, realmente no lo es. Multi-Res Shading, también conocida como MRS, se implementó por primera vez en la arquitectura Maxwell, de la cual ya ha llovido bastante, pero con ello NVIDIA quiso adelantarse a AMD ofreciendo para la realidad virtual un mejor rendimiento y representación de los cuadros en pantalla.

Y es que a diferencia del mundo gaming común, la realidad virtual necesita de dos pantallas para jugar o mostrar contenido, una por cada ojo, donde además hay que sumarle una óptica que nos permita enfocar hacia ellas debido a la pequeña distancia física que separa nuestros ojos de dichas pantallas.

Multi-Res Shading o MRS: NVIDIA vuelve a optimizar el renderizado de frames

MRS_001

La curvatura de las lentes en unas gafas de realidad virtual tienen la particularidad de que deforma las imágenes, las distorsiona, por lo que es necesario corregir este efecto desde la pipeline de trabajo de la tarjeta gráfica.

En realidad virtual las imágenes no se presenta en un plano como tal, siendo rectilíneas en su defecto, sino que se recortan para adaptarlas a la deformación que produce la lente.

Esto es un efecto de postprocesado que NVIDIA ha denominado como «Warp«, y lo que consigue es que se distorsione la imagen antes de enviarla a las gafas.

Esta distorsión compensa la que tiene la lente, de manera que el usuario puede ver una imagen plana como la ve en un monitor común, es decir, corrige el problema y lo normaliza para el usuario.

Diferentes áreas de trabajo para compensar la distorsión

MRS_004c

Lógicamente, dependiendo de donde mire el usuario y se mueva en el juego, así trabajará MRS, pero siempre tendrá una serie de parámetros comunes para corregir la distorsión. Por ello, el centro de la imagen se mantiene inalterado siempre, pero los bordes se comprimen y las esquinas desaparecen por completo, ya que Multi-Res Shading recorta la imagen.

Por lo tanto, el resultado es que solo el centro de la misma se queda igual, mientras que los bordes se pliegan, redondean y se deforman para ajustar la imagen a la lente y que cuando se represente en pantalla se mantenga uniforme, en un plano y con aspecto rectilíneo.

Lógicamente, si la imagen va a ser recortada como si usáramos photoshop, es inútil renderizar los píxeles que no van a ser mostrados en la imagen final, ya que perderíamos rendimiento de forma poco óptima. Lo que hace NVIDIA para paliar este efecto es dividir la imagen original en varias ventanas gráficas, es decir, divide la imagen en 9 secciones de distintos tamaños a proporción de 1/2 y 1/4, de manera que la imagen queda con rectángulos en secciones horizontales o verticales de 3 cuadros, también llamado 3×3.

MRS_005

Lo que hacen es reducir los bordes y finalmente desechar los que no se van a usar. Al sombrear menos píxeles pueden realizar un renderizado más rápido y con ello ganar rendimiento. Esto queda al gusto del desarrollador, que puede programar todo lo necesario para optimizar dicho proceso.

Además, a partir de Maxwell como arquitectura, NVIDIA es capaz de transmitir varias ventanas gráficas renderizando en hardware, mientras que  solo ejecutan una pipeline de geometrías por GPU una vez por cada ojo. Esto provoca que el rendimiento aumente hasta en un 40% y que además se consiga sobrepasar este valor cuando el software permite enlazar píxeles contiguos.

Compatibilidad de hardware y software

shadow-warrior-2-nvidia-multi-res-shading-performance

Actualmente, MRS es compatible con las tarjetas gráficas a partir de la serie 900 y M5000 de las GeForce y Quadro de NVIDIA o superiores, esto incluye las arquitecturas Maxwell, Pascal y Turing por el momento.

En cuanto al software, las APIs soportadas son DX11, DX12 OpenGL, mientras que los motores que las incluyen son Unreal Engine y Unity. Es de esperar que la lista crezca a medida que la RV se vaya afianzando en el mercado, los precios bajen y sean cada vez más atrayentes para los desarrolladores y compañías de videojuegos.