DirectX Raytracing
# DirectX Raytracing

DirectX Raytracing (DXR) ist Teil von Microsoft’s DirectX-Grafikschnittstelle und ermöglicht hardwarebeschleunigtes Raytracing. DXR ist keine eigenständige Version von DirectX, sondern Teil von DirectX 12.

Die ersten Grafikkarten für den Endverbraucher mit Unterstützung für diese Features ist die Nvidia GeForce-20-Serie, welche die Features hardware-seitig durch sogenannte „RT-Cores“ löst, sowie die an Professionelle gerichtete Nvidia Titan V, welche die Features softwareseitig emuliert.

Mit dem Windows 10 1809 Update wurde das Feature nutzbar.

## Technische Details

DXR erweitert das DirectX 12 API um 4 neue Elemente:

* Eine „Acceleration Structure“, welche die 3D-Geometrie für die Grafikkarte zugänglich macht und damit die Berechnung der Kollisionen der Strahlen mit der Welt auf der GPU ermöglicht
* Eine Funktion „DispatchRays“, mit der Strahlen in die Welt emittiert werden. Hierüber wird das Raytracing gesteuert
* Raytracing kann in HLSL-Shadern verwendet werden
* Der „raytracing pipeline state“, vergleichbar mit bereits existierenden Grafik- und Compute Pipeline States

## Alternative Lösungen

Die offene Grafikschnittstelle der Khronos Group, Vulkan, unterstützt über eine Erweiterung auch Raytracing.

Nvidia erlaubt Entwicklern auch Zugriff auf die „RT Cores“ über das eigene OptiX-Framework.

