Vulkan bietet jetzt Raytracing-Unterstützung. Khronos hat die endgültigen Spezifikationen von Vulkan Ray Tracing veröffentlicht, dem Entwicklungsframework, das die Beschleunigung von Raytracing-Funktionen in diesem Open-Source-Standard für die Entwicklung von Videospielen und 3D-Anwendungen ermöglicht.
Raytracing ist eine Darstellungstechnik, die realistisch simuliert, wie Lichtstrahlen die Geometrie von Szenen, Materialien und Lichtquellen schneiden und mit ihr interagieren, um fotorealistische Bilder zu erzeugen. Es wird häufig zum Rendern von Filmen und anderen Videoproduktionen verwendet. Es wird auch in Videospielen verwendet und wird zunehmend auch in anderen Arten von Anwendungen verwendet.
Bisher war diese Art der Strahlenbeschleunigungsfunktion auf dedizierte NVIDIA RTX-Grafiken und DirectX 12 Ultimate-Bibliotheken beschränkt. Die Einführung von Vulkan Ray Tracing kann die Verwendung für andere Hardwaretypen durch jeden Entwickler und für jede Software, die 3D-Bilder verwendet, öffnen.
Es sollte nicht vergessen werden, dass Vulkan eine Reihe von Open-Source-Bibliotheken ist, die einen Zugriff auf niedriger Ebene ermöglichen, sodass Programmierer die Hardwareleistung maximieren können. Eine offene, kostenlose Multi-Plattform-API, die in den letzten Jahren kontinuierlich verbessert wurde und zur einzigen Alternative zu Microsoft DirectX geworden ist.
Khronos hat die endgültigen Spezifikationen der Spezifikationen veröffentlicht, die eine Hardwarebeschleunigung der Blitzspur ermöglichen. Dies ist wichtig, da dies der erste offene Standard ist, der diese Art von Funktion zulässt.
Vulkan Ray Tracing integriert ein konsistentes Ray Tracing-Framework in die Vulkan-API und ermöglicht so das flexible Zusammenführen von Rasterisierung und Ray Tracing-Beschleunigung. Vulkan Ray Tracing ist hardwareunabhängig und kann daher, sofern verfügbar, sowohl auf vorhandenen GPU-Computern als auch auf dedizierten Ray Tracing-Kernen beschleunigt werden.
Die Gesamtarchitektur dieser Bibliotheken ist den Benutzern vorhandener Raytracing-APIs vertraut, wodurch eine direkte Portabilität vorhandener Raytracing-Inhalte ermöglicht wird. Dieses Framework bietet jedoch auch neue Funktionen und Flexibilität bei der Implementierung.
Vulkan Ray Tracing besteht aus einer Reihe von Vulkan-, SPIR-V- und GLSL-Erweiterungen, von denen einige optional sind. Die primäre Erweiterung VK_KHR_ray_tracing bietet Unterstützung für den Aufbau und die Verwaltung von Beschleunigungsstrukturen, Raytracing-Stufen und Shading-Pipes sowie für die intrinsische Abfrage aller Shader-Stufen.
Eine weitere wichtige Erweiterung ist VK_KHR_pipeline_library, die eine Reihe von Shadern bereitstellt, die effizient in Raytracing-Pipes eingebunden werden können, während VK_KHR_deferred_host_operations das Herunterladen intensiver Controller-Vorgänge, einschließlich Raytracing-Kompilierung oder CPU-basierter Beschleunigungsstrukturkonstruktion, in die von der Anwendung.
Alle diese Funktionen sind bereits in der endgültigen Version der Spezifikationen definiert, obwohl ihr Implementierungsprozess nicht automatisch erfolgt und von jedem Entwickler für jedes Spiel oder jede Anwendung definiert werden muss. Vulkan kann eine Vielzahl von Hardware nutzen. Theoretisch könnte jede GPU Vulkan RT unter Verwendung vorhandener „GPU-Computing“ -Kerne ausführen, obwohl die Leistung wahrscheinlich nicht die maximal mögliche sein wird.
Die gute Nachricht ist, dass Vulkan als großartige Alternative zum Microsoft-Monopol mit DirectX und in allen Arten von Funktionen konsolidiert wird, einschließlich Raytracing, das zu einer der Referenzdarstellungstechniken geworden ist. Khronos hat eine große Anzahl von Herstellern, die sie unterstützen (AMD, Intel, NVIDIA, Qualcomm, Imagination, ARM…) und Anbieter von Grafik-Engines wie iDTech, Unreal, Unity, Frostbite oder CryEngine. Es wird nicht schwer sein, Vulkan Ray Tracing bald in großartigen Spielen zu sehen.