Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

Vulkan-API auf dem Mac: Bald mehr Spiele?

In der Vergangenheit wurde Apple häufig kritisiert, dass die eigene OpenGL-Umsetzung von der Performance her lange nicht mit der auf Windows verfügbaren, Microsoft-eigenen Grafikschnittstelle DirectX mithalten kann. Installiert man auf Apple-Hardware Windows und führt Spiele aus, erhält man oftmals ein Vielfaches der Bildraten im Vergleich zu OpenGL-basierten Spielen unter macOS.

Apple bietet seit 2015 auch auf Macs das neue Grafik-API Metal an, welches eine moderne, saubere und performante Schnittstelle darstellt. Allerdings scheuen viele Entwickler den hohen Portierungsaufwand von Spielen, die unter Windows mittels DirectX programmiert wurden - oftmals kommen so genannte "Wrapper" zur Portierung zum Einsatz, welche DirectX-Befehle auf Apples OpenGL-implementierung umleiten und somit Spiele mit dem Mac kompatibel machen. Dies führt allerdings dank Apples langsamer OpenGL-Umsetzung und wegen des zusätzlichen Rechenaufwandes häufig zu starker Beeinträchtigung der erreichbaren Bildraten.


Die Khronos Group, verantwortlich für die Weiterentwicklung des OpenGL-Standards, hat vor einigen Jahren ein neues Grafik-API namens "Vulkan" veröffentlicht, welches in letzter Zeit zunehmend mehr in größeren Spieleproduktionen eingesetzt wird. Vulkan orientiert sich, wie Metal und DirectX 12 auch, an modernen Grafikkarten-Architekturen. OpenGL hingegen stammt ursprünglich von Silicon Graphics und entstand in den Grundzügen bereits in den frühen 80er Jahren unter dem Namen IRIS GL.

Apple zeigt allerdings wenig Interesse an der Umsetzung von Vulkan auf dem Mac oder iOS-Geräten. Da sich die Programmierschnitstellen Vulkan und Metal vom Prinzip her aber sehr ähneln, wurde das Projekt MoltenVK ins Leben gerufen - das Ziel ist, dass auf allen wichtigen Plattformen wie Windows, macOS, Android und iOS ein konsistentes Grafik-API zur Verfügung stehen. Vulkan gibt es bereits auf Windows und Android und mittels MoltenVK sollen die meisten Programmierschnittstellen des Vulkan-APIs auch auf dem Mac und iOS verwendet werden können. MoltenVK leitet Befehle auf Apples Metal-API ohne die Konvertierung von Datentypen um, um ein Maximum an Performance zu erreichen.

Valve, bekannt durch Counter Strike und die Steam-Plattform, hat bereits das Spiel "Dota 2" auf MoltenVK umgestellt - und erreicht dadurch im Vergleich zu Apples OpenGL-Implementierung eine 50 prozentige Performance-Steigerung.


Sollten in Zukunft mehr große Spiele-Titel das Vulkan-API nutzen, könnten durch MoltenVK viele Spiele ohne gigantische Entwicklungskosten und mit guter Performance auf Mac und auch iOS portiert werden. Entwickler können MoltenVK ohne Lizenzzahlungen in jedem Spiele-Titel verwenden.

Kommentare

Lefteous
Lefteous27.02.18 10:35
So ganz verstehen kann ich die Implikationen und Annahmen in diesem Artikel nicht nachvollziehen.
Metal kann man einfach in Unity nutzen. Was braucht man denn mehr?
-4
dan@mac
dan@mac27.02.18 10:42
Lefteous
So ganz verstehen kann ich die Implikationen und Annahmen in diesem Artikel nicht nachvollziehen.
Metal kann man einfach in Unity nutzen. Was braucht man denn mehr?
Also soll jeder Hersteller seine Engine in den Müll werfen und Unity verwenden?
+3
nane
nane27.02.18 11:01
Jetzt noch "aktuelle" spieltaugliche Grafikkarten in Macs rein und es kann losgehen
Das Leben ist ein langer Traum, an dessen Ende kein Wecker klingelt.
+4
NikNik27.02.18 11:07
Dass Metal und Vulkan ähnlich sind ist auch so ein Mythos. Metal ist wesentlich höher-leveliger und hat nur ein Bruchteil der Features von Vulkan (in Metal 1 fehlt z.B. Tesselation und Geometry Shader, in Metal 2 nur noch der Geometry Shader). Es ist näher an DX11 mit weniger Features als an DX12/Vulkan.

Wenn man ein Vulkan-Spiel entwickeln will und das dann auch auf einem Mac laufen soll, dann muss man es schon mit MoltenVK im Hintergrund entwickeln. Man darf dann einige Features nicht nutzen, bzw. muss sie optional halten.

DOOM und Wolfenstein 2 würden nicht ohne Weiteres laufen, so wie es jetzt ist, schlicht weil Metal es gar nicht kann.

Es ist schlicht ein Irrglaube, dass Apple Vulkan nicht braucht, weil sie Metal haben. Metal ist kein Äquivalent.
+9
LoCal
LoCal27.02.18 12:00
Lefteous
Metal kann man einfach in Unity nutzen. Was braucht man denn mehr?

Die neue Unity-Version klammere ich mal aus, aber bei allen vorherigen Versionen konnte man ersten Blick erkennen, dass da Unity als Engine verwendet wird.
Manche Entwickler haben halt dann eine "besonderen" Grafikstil genutzt (z.B. Firewatch) um das Problem zu umgehen, aber im grossen und ganzen war Unity nicht wirklich state-of-the-art. Und kunos hat bei Assetto Corsa anfangs auch Unity nutzen wollen, aber sind ganz schnell davon abgekommen und haben ihre eigene Engine gebaut … und versuchen es beim nächsten Titel mit Unreal4.

Aber zu Vulkan, ich finde leider den Link nicht mehr, aber bei den Spieleentwicklern nimmt das Interesse an Vulkan doch schon wieder ab, oder war da nur ein temporäres Phänomen?
Ich hab zwar keine Lösung, doch ich bewundere dein Problem
0
Lefteous
Lefteous27.02.18 12:06
Wenn man von Anfang an gescheit entwickelt, dann ist es auch kein Problem mit der eigenen Engine auf Metal umzustellen - siehe Blizzard bei Starcraft 2.
-4
NikNik27.02.18 12:48
Lefteous
siehe Blizzard bei Starcraft 2.

StarCraft 2 ist Tech-Level DirectX 9 / OpenGL 2.x. Hier bestehen kaum noch Anforderungen an die API oder an die Grafikhardware.
+4
Lefteous
Lefteous27.02.18 13:14
NikNik
Lefteous
siehe Blizzard bei Starcraft 2.

StarCraft 2 ist Tech-Level DirectX 9 / OpenGL 2.x. Hier bestehen kaum noch Anforderungen an die API oder an die Grafikhardware.
Es läuft trotzdem mit Metal deutlich perfomanter als vorher und darum ging es hier vor allem.
+2
ColoredScy
ColoredScy27.02.18 14:44
Lefteous
Es läuft trotzdem mit Metal deutlich perfomanter als vorher und darum ging es hier vor allem.

Was nicht daran liegt, dass metal so unglaublich performant ist, sondern daran, dass OpenGL von Apple auf dem Mac soo unterirdisch lahm ist und es keine weiteren Alternativen hier gibt.
Rechenbeschleunigung mit CUDA ist z.B. auch gute 10-20% schneller, als mit Metal2 – und das, obwohl CUDA auch nicht optimal angepasst ist.

nane
Jetzt noch "aktuelle" spieltaugliche Grafikkarten in Macs rein und es kann losgehen

Ganz genau das ist der Punkt: in den Mac *rein* - und nicht mit Performanceverlust plus Aufpreis in einer externen Lösung an den Mac *ran*. Und aktuell bitte nicht in Anführungszeichen. Wenn ich schon Apple-Preise für einen Rechner zahlen muss, dann möchte ich auch die schnellsten verfügbaren Karten (ohne Runtertaktung) drin haben, die der Markt her gibt (und nicht sowas wie die Vega aus dem iMac).
Hey Siri, niemand versteht mich!
+5

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.