Nvidia has released a new demo to showcase some of the advanced graphics capabilities of the company’s Turing architecture found on the latest RTX series graphics cards, like the flagship GeForce RTX 2080 Ti. The public demo, called Asteroids, showcases the new mesh shading capabilities, which Nvidia claims will improve image quality and performance when rendering a large number of complex objects in scenes in a game.
With Turing, Nvidia introduced a new programmable geometric shading pipeline, transferring some of the heavy workload from the processor onto the GPU. The GPU then applies culling techniques to render objects — in the case of this demo, the objects are asteroids — with a high level of detail and image quality.
“Turing introduces a new programmable geometric shading pipeline built on task and mesh shaders,” Nvidia graphics software engineer Manuel Kraemer explained in a detailed blog post explaining the benefits of mesh shading on Turing. “These new shader types bring the advantages of the compute programming model to the graphics pipeline. Instead of processing a vertex or patch in each thread in the middle of fixed function pipeline, the new pipeline uses cooperative thread groups to generate compact meshes (meshlets) on the chip using application-defined rules.”
In the demo, Nvidia showed that each asteroid contains 10 levels of details. Objects are segmented into smaller meshlets, and Turing allows the meshlets to be rendered in parallel with more geometry while fetching less data overall. With Turing, the task shader is employed first to check the asteroid and its position in the scene to determine which level of detail, or LoD, to use. Sub-parts, or meshlets, are then tested by the mesh shade, and the remaining triangles are culled by the GPU hardware. Before the Turing hardware was introduced, the GPU would have to cull each triangle individually, which produced congestion on the CPU and the GPU.
“By combining together efficient GPU culling and LOD techniques, we decrease the number of triangles drawn by several orders of magnitude, retaining only those necessary to maintain a very high level of image fidelity,” Kraemer wrote. “The real-time drawn triangle counters can be seen in the lower corner of the screen. Mesh shaders make it possible to implement extremely efficient solutions that can be targeted specifically to the content being rendered.”
In addition to using this technique to create rich scenes in a game, Nvidia said that the process could also be used in scientific computing.
“This approach greatly improves the programmability of the geometry processing pipeline, enabling the implementation of advanced culling techniques, level-of-detail, or even completely procedural topology generation,” Nvidia said.
Developers can download the Asteroids demo through Nvidia’s developer portal, and the company also posted a video showing how mesh shader can improve rendering.