Raytracing in Echtzeit kommt auf breiter Front
Raytracing, also das Berechnen von 3D-Szenen durch aussenden von virtuellen Strahlen, ist seit Jahren das große Ding, das “demnächst” kommen wird. Schon während des Intel Larrabee Hypes war Raytracing immer wieder als neuer Standard für Games im Gespräch, weil es durch die Architektur des damaligen Many-Core-Pentium-Designs des Larrabee perfekt dazu gepasst hätte. Damals konnte man bereits per Raytracing berechnete Quake-Demos begutachten. Da Larrabee jedoch nie erschienen ist, ist auch Raytracing für den privaten Gamermarkt wieder in den Hintergrund gerückt.
Dieses Mal jedoch – knapp 10 Jahre später – scheint der Vorstoß ernst gemeint zu sein, denn er kommt aus mehreren Ecken. NVIDIA hat mit RTX wie üblich eine proprietäre Schnittstelle am Start, die mit Microsofts DXR-Erweiterung der DirectX-API eine universelle Schnittstelle (unter Windows) für Raytracing zur Verfügung stellen möchte. Dabei hat NVIDIA offenbar mit Microsoft kooperiert, denn für das Raytracing soll der Tensor-Chip der NVIDIA Volta zum Einsatz kommen.
AMD dagegen stellt Radeon ProRender vor, das jedoch nicht als Gegenstück zu NVIDIAs RTX gedacht ist, sondern als quelloffene Schnittstelle für Blender, Autodesk 3ds Max, Maya oder Cinema 4D.
The level of visual detail required of CAD models for the automotive industry or the most advanced film VFX requires a level of visual accuracy that can only be achieved with advanced ray tracing techniques. Ray tracing maps the path of light rays from each pixel of the rendered object back to the camera, realistically simulating light interactions like shadows, reflections and transparency. Ray tracing is very processor intensive resulting in long render times and low frame rates. Alternatively, rasterization (or scanline) rendering uses algorithms to approximate the appearance of 3D objects, surfaces and textures. Rasterization can be accelerated by GPU hardware resulting in real-time rendering and high frame rates making it an ideal fit for gaming. Of course the trade-off with rasterization is that the approximated renders are nowhere close to the photorealism of their ray traced counterparts. These trade-offs between rasterization and ray tracing traditionally impose corresponding constraints on 3D designers who would have to choose between realistic illumination and real-time speeds depending on the priorities of their project.
Das erinnert an AMDs Vorstoß mit einer neuen Low-Level-API namens Mantle, womit AMD eine ähnlich hardwarenahe API etablieren wollte, wie Glide damals bei 3dfx. Aus Mantle wurde bekanntlich Vulkan, die plattformübergreifende API für aufwändige 3D-Spiele, die jedoch auch heute immer noch nicht so recht durchstarten mag.