Categories: Sonstiges

Die Khronos Group launcht Vulkan 1.2.

Die nächste Version der Vulkan-API ist jetzt verfügbar.

Vulkan 1.2 hat eine endgültige Spezifikation neben mehreren Treibern, die ihre Konformitätstests bestehen. Fünf Hardware-Anbieter (AMD, ARM, Imagination, Intel und NVIDIA) haben Treiber eingereicht, die die Tests bestanden haben und der NVIDIA-Treiber ist heute für Windows und Linux verfügbar. Wie üblich sind „Entwickler-Beta“-Treiber nicht für die Allgemeinheit bestimmt. Sie konzentrieren sich darauf, die Funktionen so schnell wie möglich an die Software-Entwickler herauszugeben, was wahrscheinlich bedeutet, dass die anderen Teile nicht auf dem neuesten Stand gehalten werden.

Die Botschaften der Khronos Group scheinen sich auf zwei Höhepunkte zu konzentrieren:

  • Verstärkter Support für HLSL (DirectX Shading Sprache)
  • Das Timeline Semaphore Primitive

Für Spieleentwickler ist HLSL eine große Sache. Es ist die Shading-Sprache – Code, der direkt auf GPUs läuft – die DirectX verwendet. Viele Engine-Entwickler schreiben ihren Shader-Code in HLSL und unterhalten Tools, die diesen für andere Shading-Sprachen kompilieren, wenn sie auf Nicht-DirectX-Plattformen abzielen. Vulkan-Treiber nehmen SPIR-V-Bytecode auf, der von einer anderen Sprache kompiliert wird. Die Khronos-Gruppe unterhält einen GLSL-Compiler, aber Microsoft unterhält ein SPIR-V-Backend für seinen DXC-Compiler.

Mit Vulkan 1.2 unterstützt dieses SPIR-V-Target nun alle „nativen“ HLSL-Funktionen bis zum Shader Modell 6.2. Das ist zwar nur knapp vor DXR (das ist Shader Model 6.3), aber Hardware-Hersteller können die Lücke schließen, wie NVIDIA mit ihrer VKRay-Erweiterung. Ein besserer Support für HLSL bedeutet, dass Vulkan-Spiele leichter zu erstellen sein sollten, da der Entwickler weniger Rendering-Fehler (wie unerklärliche schwarze Flecken in Materialien oder seltsame Ungleichmäßigkeiten in der Beleuchtung) umgehen muss.

Auch – ein verstecktes Juwel: Der Blog-Post der HLSL erwähnt ausdrücklich, dass „eine anbieterübergreifende Lösung für das Raytracing noch immer in der Diskussion ist“. Weiter wird NVIDIA dafür gedankt, dass die Organisation mit ihren Beiträgen zu DXC den Weg dafür geebnet hat, aber die Community würde sich wahrscheinlich über die Bestätigung freuen, dass das herstellerübergreifende Raytracing in einem Gremium für Grafikstandards diskutiert wurde.

Das andere Feature, das Timeline-Semaphor-Primitiv, scheint ebenfalls sehr nützlich für Entwickler zu sein. Die Synchronisierung mehrerer Threads ist oft ein fehlerhafter Albtraum.

Es ist gut, die Grafikanbieter dazu zu bewegen, eine Grafik zu erstellen, die sowohl auf der CPU als auch auf der GPU funktioniert und die sowohl Threads (CPU) als auch Warteschlangen (GPU) synchronisiert. Dies sollte es hoffentlich einfacher machen, die GPU effizient zu laden, mit weniger Probleme durch enge Zeitfenster.

Wenn Sie kein Entwickler sind, wird es eine Weile dauern, bis Sie direkt davon betroffen sind. Es zeichnet sich aber ein erkennbarer Trend ab, wohin sich die Branche entwickelt.

Vielen Dank für Ihren Besuch.

3DMaster