MoltenVK für mac und iPhone: Vulkan für macOS erhöht FPS in Dota 2 um 50 Prozent

Frank Hüber 27 Kommentare
MoltenVK für mac und iPhone: Vulkan für macOS erhöht FPS in Dota 2 um 50 Prozent
Bild: Valve

Die API Vulkan, die von der Khronos Group entwickelt wird, die auch hinter OpenGL steckt, kommt auch für Apple macOS und iOS – Apple ist dies allerdings nicht zu verdanken. Bislang ist die Vulkan-API auf Windows, Linux, Android, der Nintendo Switch und Cloud-Systemen nutzbar, Apples Plattformen fehlten dagegen bislang.

Apple setzt auf die selbst entwickelte Grafik-API Metal und hat aus diesem Grund keine Anstrengungen unternommen, Vulkan auf die eigenen Systeme zu bringen. OpenGL wird zwar sowohl unter macOS als auch iOS (OpenGL ES) unterstützt, setzt aber gerade unter macOS auf alte und langsame Treiber, die zudem nicht die neuesten Versionen der API unterstützen. Mit der Runtime MoltenVK steht nun ein fast komplettes Subset der Vulkan-API unter Nutzung von Metal 1 und 2 über einen Übersetzungs-Layer bereit, der unter der Apache-2-Lizenz steht. Entsprechend wird auf den System weiterhin ausschließlich Metal ausgeführt. Der Layer übersetzt schlicht die Vulkan-Befehle in Metal-kompatible Befehle, ohne dass diese manuell in die andere API übersetzt werden müssen. Verantwortlich für diese Umsetzung sind Valve, LunarG und The Brenwill Workshop.

Vulkan für macOS
Vulkan für macOS (Bild: Khronos Group)

Einheitliche Code-Basis für Windows, Linux und macOS

Durch die Vulkan-API für macOS und iOS wird es Entwicklern nun möglich, eine einheitliche Code-Basis für alle unterstützen Betriebssysteme zu nutzen, also für Windows, Linux, Android, macOS, iOS und die Nintendo Switch. Dies reduziert die Entwicklungskosten und erleichtert die Portierung auf andere Plattformen. Gleichzeitig soll MoltenVK so schlank gehalten worden sein, dass kaum Leistungseinbußen durch das Remapping und Konvertieren der Daten entsteht. Ein kleiner Teil der Funktionen wird von MoltenVK jedoch nicht unterstützt.

Dota 2 läuft 50 Prozent schneller

Valve setzt diese Möglichkeiten als einer der ersten Entwickler um und hat MoltenVK bereits erfolgreich für Dota 2 getestet. Die ersten Ergebnisse sind sehr vielversprechend. Denn Dota 2 erreicht durch den Einsatz von Vulkan unter macOS teilweise 50 Prozent mehr Bilder pro Sekunde als mit OpenGL, wie Valve in einem Video unter Beweis stellt.

Übersetzungs-Layer für DirectX 12

Windows bietet zwar bereits Vulkan-Treiber, über den Microsoft Store dürfen jedoch nur Anwendungen vertrieben werden, die DirectX einsetzen. In den nächsten Monaten soll deshalb ein entsprechender Übersetzungs-Layer auch für DirectX 12 folgen, so dass Vulkan-Anwendungen auch auf einem DirectX-12-Backend aufsetzen können. Einige Entwickler umgehen die Einschränkung des Microsoft Stores im Moment mit Angle, einer Implementation von OpenGL ES, das auf DirectX aufsetzt – zukünftig sollen sie auf Vulkan setzen können.