Home TecnologíaDirectX Ray Tracing: Nueva Especificación y Optimización del Rendimiento

DirectX Ray Tracing: Nueva Especificación y Optimización del Rendimiento

by Editor de Tecnologia

Microsoft ha publicado finalmente una segunda especificación funcional de DirectX Ray Tracing (DXR) que detalla cómo se espera que sea su canalización de trazado de rayos, los objetivos que persigue la compañía y el funcionamiento interno de la tecnología. En el archivo original, Microsoft describió la canalización de trazado de rayos desde la generación de shaders de rayos, la programación y la estructura de aceleración, hasta el sombreado real del juego. En esta ocasión, la empresa ha compartido información sobre áreas como la geometría agrupada, las estructuras de aceleración de nivel superior particionadas (TLAS) y las operaciones de estructura de aceleración indirectas.

En primer lugar, Microsoft introduce el concepto de geometría agrupada. Es importante comprender que los elementos gráficos básicos son los triángulos, los componentes fundamentales de los mundos 3D actuales. Sin embargo, la geometría agrupada de DXR trata grupos de triángulos cercanos como bloques de construcción comunes o múltiples bloques de construcción, lo que permite a la GPU construir, mover e instanciar geometría de forma masiva. En lugar de gestionar esto por separado con múltiples llamadas para cada triángulo, la tarea de la GPU se simplifica considerablemente. DXR incluso define codificaciones de vértices compactas y formatos de plantilla predefinidos para garantizar que la memoria y el ancho de banda de la GPU necesarios para ejecutar la construcción y el movimiento de geometría masiva sean suficientes. Como resultado, la GPU no tiene que actualizar ni duplicar la geometría existente, y DXR ayudará a renderizar el follaje, las multitudes y los objetos del juego una sola vez, permitiendo moverlos fácilmente. Esto reduce la carga de la GPU y mejora el rendimiento del trazado de rayos en los juegos.

La nueva función, denominada TLAS particionado, sigue el mismo enfoque de modularidad y escalabilidad, pero lo aplica a la escenografía del juego. Divide el grafo de escena de nivel superior en particiones más pequeñas que la GPU puede traducir, redimensionar o actualizar de forma independiente con nuevos elementos de trazado de rayos. Por ejemplo, en los juegos de mundo abierto, volver a renderizar cada escena trazada por rayos consume mucho tiempo de cálculo de la GPU, lo que afecta significativamente al rendimiento. Sin embargo, al particionar la escenografía del juego en varios bloques, la GPU puede trazar rayos solo a los elementos necesarios en lugar de a toda la escena del juego. Esto refleja una filosofía de contenido dinámico que Microsoft está promoviendo.

Por último, existe una nueva función llamada operaciones de estructura de aceleración indirectas. Esta función evita cierta funcionalidad de la CPU, permitiendo que las operaciones se ejecuten directamente en la GPU. Esto incluye las llamadas a la API para construir, compactar, mover e instanciar plantillas que ahora pueden ser gestionadas por el comando central de la GPU, en lugar de por la CPU. Por ejemplo, muchas llamadas a la API en DirectX 12 pasan por la CPU para su procesamiento, dejando a la GPU esperando a que la CPU complete sus tareas. Con las nuevas operaciones de estructura de aceleración indirectas, DirectX 12 Ray Tracing traslada una gran parte de su canalización limitada por la CPU a cargas de trabajo impulsadas por la GPU. Esto reduce la latencia general del sistema, mejora el rendimiento del trazado de rayos y aumenta el paralelismo de datos al tratar con escenografías complejas.

leer más  Fuga de capitales: Inversores abandonan los fondos activos

You may also like

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.