Vulkan
Vulkan ist eine Anwendungsschnittstelle (API), die für das Rendern von 3D-Grafiken in Anwendungen und Videospielen entwickelt wurde. Sie ermöglicht Entwicklern einen direkteren Zugriff auf die GPU eines Computers als ältere APIs, was die Effizienz und die 3D-Leistung verbessern kann. Vulkan ist eine plattformübergreifende API, die von Computern und Mobilgeräten unterstützt wird. Sie wurde von der Khronos Group entwickelt, einer Industriegruppe, die sich auf offene Standards für 3D-Grafiken konzentriert, und 2016 erstmals vorgestellt.
Wie andere 3D-Grafik-APIs hilft Vulkan Spieleentwicklern dabei, der GPU eines Computers mitzuteilen, wie sie 3D-Modelle und Umgebungen zeichnen und animieren soll. Die API bietet eine standardisierte Möglichkeit, Befehle an die GPU zu senden, zum Beispiel wie eine 3D-Form aus Polygonen erstellt, Texturen darauf abgebildet und Formen zu einer 3D-Umgebung kombiniert werden.
Im Gegensatz zu älteren APIs ist Vulkan jedoch eine Low-Level-API, die Entwicklern direkten Zugriff auf die Hardware der GPU ermöglicht. High-Level-APIs wie OpenGL bieten eine Bibliothek von Funktionen, die Spiele zum Bearbeiten von 3D-Objekten aufrufen können. Dadurch entsteht über einen Treiber eine Abstraktionsschicht zwischen der Spielesoftware und der GPU, und die CPU muss API-Aufrufe in GPU-Anweisungen übersetzen. Vulkan entfernt den größten Teil dieser Abstraktion, indem es einen direkteren Zugriff auf die GPU und den VRAM ermöglicht. Spieleentwickler müssen mehr Funktionen in ihren Quellcode schreiben oder importieren, wodurch dieser komplizierter wird. Dadurch können sie ihre Spiele jedoch für eine bessere 3D-Leistung optimieren und gleichzeitig den Arbeitsaufwand der CPU verringern.
Da Vulkan plattformübergreifend ist, können Spieleentwickler denselben Grafikcode in verschiedenen Versionen ihres Spiels verwenden. Windows, Linux und Android unterstützen die Vulkan-API direkt, während macOS und iOS sie über einen Wrapper unterstützen, der Vulkan-Befehle in Apples Metal-API übersetzt.
Testen Sie Ihr Wissen