Inhaltsverzeichnis:
Samsungs Demonstration von allem, wozu das Galaxy S7 und das S7 Edge in der Lage sein werden - sobald Sie sie in den Händen halten können - war so beeindruckend wie nie zuvor. Wie so oft müssen jedoch noch Fragen beantwortet werden. Wenn es um Leistung und Spielefunktionen geht, besteht eine gute Chance, dass zumindest einige dieser Fragen mit Samsung zu tun haben, das diese Telefone die ersten mit integrierten Vulkan-APIs sind.
Wir haben Demonstrationen gesehen, wozu Vulkan in Desktop-Umgebungen fähig sein wird, aber eine große Frage, die beantwortet werden muss, ist, was Vulkan für Galaxy S7- und S7-Edge-Besitzer bedeutet. Folgendes wissen wir bisher und was wir erraten können, wird als nächstes geschehen, dank einiger sehr kluger Leute, die mit Vulkan und in der Spielebranche arbeiten.
Das Wichtigste zuerst, was ist Vulkan?
Wenn Sie jemanden fragen, der gerade mit OpenGL im Gaming-Bereich arbeitet, ob etwas Besseres erforderlich ist, erhalten Sie die gleiche Antwort. Ja, jetzt bitte.
Während mit den aktuellen Technologien viel getan werden kann, ist es eine enorme Herausforderung, Spielerlebnisse plattformübergreifend bereitzustellen. Selbst mit den richtigen Leuten und den richtigen Ressourcen ist es alles andere als einfach. AMD versuchte, dieses Problem mit einer Technologie namens Mantle zu beheben. Statt jedoch das Projekt abzuschließen, wurde die Arbeit an DirectX 12 fortgesetzt. Mantle wurde stattdessen der Khronos-Gruppe als Open-Source-Spende zur Standardisierung von Low-Level-Computing und -Rendering auf Multi-Source-Systemen gespendet. Kern-CPU-Systeme.
Grundsätzlich besteht das Ziel von Vulkan darin, eine bessere Grafikleistung zu erzielen, indem der Multi-Core-Prozessor voll ausgenutzt wird. Multithreading bedeutet, dass Vulkan das kann, was OpenGL ES nicht kann, und das Endergebnis ist eine allgemeine Leistungssteigerung. Da es sich um ein Open Source-Projekt handelt, das von mehreren kleinen Gruppen unterstützt wird, konnte die erste Version mehrere Plattformen gleichzeitig ansprechen. Android ist eine dieser Plattformen, und wir haben bereits gesehen, dass einige Hersteller sofort daran arbeiten, Vulkan für Entwickler zu unterstützen, die daran interessiert sind, etwas zu entwickeln, das auf diesen APIs beruht.
Als wir uns mit Sascha Willems zusammensetzten, einem Entwickler, der bereits seit einiger Zeit mit Vulkan zusammenarbeitet, wies er auf einen weiteren bedeutenden Vorteil der Verwendung von Vulkan hin.
Portierung ist ein weiterer Bereich, der profitieren sollte. Obwohl OpenGL und OpenGL ES vieles gemeinsam haben, müssen Sie noch viel Portierungsarbeit leisten, und in der Regel schreiben Sie separate Renderer für beide. Bei Vulkan ist das nicht mehr der Fall. Das einzige, was sich unterscheidet, ist der plattformspezifische Code wie das Abrufen eines Rendering-Fensters, der gegenüber OpenGL (ES) mit der WSI (Windows-Systemintegration), die Teil von Vulkan ist, erheblich verbessert wurde. Insbesondere mit Geräten wie dem NVIDIA Shield, die eine Desktop-ähnliche GPU-Leistung bieten, werden dank Vulkan vermutlich mehr Desktop-Spiele auf Android portiert. Das Hinzufügen von Android-Unterstützung zu meinen Vulkan-Beispielen war zum Beispiel nur eine Frage von Minuten, und der Rendering-Code ist für Windows, Linux und Android genau gleich
Warum kommt Samsung als erstes auf den Markt? Grundsätzlich wird Samsung Vulkan verwenden, um Entwickler vor Gericht zu bringen, um Erfahrungen zu machen, die direkt mit Apples Behauptung konkurrieren, dass Gaming auf dem iPhone besser ist. Indem Samsung dies vor allen anderen anbietet, kann Samsung Entwickler bei Veranstaltungen wie der bevorstehenden Entwicklerkonferenz des Unternehmens ansprechen und großartige Spiele entwickeln, die auf dem Galaxy S7 und S7 Edge am besten funktionieren.
Ist Vulkan eine Antwort auf Metal?
Die meisten Benutzer von Vulkan sind froh, diese neue API mit dem vergleichen zu können, was Apple mit seinem Low-Level-Performance-Framework Metal gemacht hat. Wenn Sie jemals gesehen haben, wie Apple Metal auf der Bühne präsentiert oder ein mit Metal erstelltes Spiel auf einem iPhone im Vergleich zu demselben Spiel auf einem anderen Handy verwendet hat, kennen Sie den Unterschied in der Bedeutung. Das Verlassen auf OpenGL ES für 3D-Spiele auf einem Telefon ist ein Problem, das bedeutet, dass der Akku schneller entladen wird, um ein minderwertiges Erlebnis zu erzielen. Metal spricht das für Apple an, und theoretisch könnte Vulkan für Android etwas Ähnliches tun.
Es steckt noch viel mehr dahinter, wie wir aus Gesprächen mit der Entwicklungsleiterin von Giant Spacekat, Brianna Wu, erfahren haben. Als mit Metal und Vulkan vertraute Entwicklerin konnte sie eine kleine Perspektive bieten.
Es ist fair, sie als ähnlich zu bezeichnen, da beide Technologien versuchen, dasselbe Problem zu lösen. Dieser OpenGL-Stack ist unhaltbar, er wurde in einem Zeitalter mit diesem Single-Core-Paradigma geschrieben und funktioniert einfach nicht mehr. Apple bringt Metal auf den Markt. Der Unterschied für Apple besteht darin, dass sie eine Liste von Treibern, eine Liste von GPUs und eine Liste von Displays anzeigen können und viel Kontrolle über die Hardware haben. Sie können jemanden dazu bringen, dieses Zeug in der Versammlung zu programmieren, und es ist ein haltbarer Weg vorwärts. Vulkan versucht, dasselbe Problem insgesamt zu lösen, aber es ist eine viel umfassendere Sache, die sie zu implementieren versuchen. Es ist ein viel, viel schwieriger zu lösendes Problem, insbesondere wenn es kein Unternehmen gibt, das die Größe von Apple hat und diese Technologie anführt.
Auf Android haben wir bereits Beispiele dafür gesehen, wovon Wu spricht. NVIDIA und Samsung haben offensichtlich auf ihre eigene Art und Weise die Unterstützung für Vulkan angekündigt, aber es wird mindestens bis zur nächsten Android-Version dauern, bis Google Vulkan naiv in allen Android-Versionen eingeführt hat. Selbst wenn dies passiert, wird es nur für die neueste Version von Android sein, die sich weiterentwickelt. Ein kurzer Blick auf die neuesten Versionsnummern von Google ist die Erklärung, warum es eine Weile dauern wird, bis Sie ein plattformweiter Erfahrungsverbesserer sind.
Der Support von Google ist nicht die einzige Herausforderung. Die breite Akzeptanz von Entwicklern ist auf jeder Plattform eine große Herausforderung. Wie Wu in unserem Interview betonte, ist Apple's Metal schon eine ganze Weile nicht mehr verfügbar und die Anzahl der Spiele, die das Framework unterstützen, ist ziemlich gering.
Es ist eine dieser Ideen, die ein Problem wirklich löst, aber zumindest auf der Apple-Seite haben wir noch einen langen Weg vor uns, bevor wir dieses dicke OpenGL-Stack-Problem wirklich gelöst haben. Es ist ehrlich gesagt, die Plattform zu töten.
Samsung hofft, dies direkt angehen zu können, und hat mit diesem Ansatz mit seinen Fingerprint-APIs und der Unterstützung von Multi-Window-Apps nur begrenzte Erfolge erzielt. Genau wie bei Apple und Metal wird es jedoch eine Weile dauern, bis wir eine signifikante Übernahme sehen.
Was ist mit Vulkan und VR?
Der andere große Grund, warum Samsung die Gelegenheit nutzt, der erste Hersteller mit Vulkan-Unterstützung zu sein, ist die Gear VR. Samsung und Oculus haben großartige Arbeit geleistet, um die Smartphone-basierte VR über das passive Google Cardboard-Erlebnis zu heben, aber die Plattform ist nicht ohne Leistungsprobleme. Da Oculus und Samsung beide Mitglieder der Khronos-Gruppe sind, ist es sinnvoll, dass beide Unternehmen Entwickler ermutigen, diese neue Technologie zu unterstützen, um die Erfahrung mit Gear VR weiter zu verbessern. Laut Sascha spielt VR eine wichtige Rolle dabei, warum Vulkan gerade so eine große Rolle spielt.
VR setzt stark auf ein flüssiges Erlebnis mit stabilen Bildraten und ohne Probleme. Vulkan bietet in diesem Bereich viel, z. B. GPU-Timer und bessere Synchronisation sowie Multi-Threading. Dinge wie Mikro-Stottern sind in OpenGL (ES) weit verbreitet und schwer zu beheben. Ich denke, dies ist ein Bereich, in dem Android am meisten profitieren wird. Vulkan ist weitaus expliziter als OpenGL ES und bietet im Voraus weitaus mehr Informationen über z. B. die Rendering-Pipeline zur GPU (und zum Treiber), wodurch die Vorhersage für die GPU erheblich erleichtert wird. Dies führt zu einem weitaus geringeren Arbeitsaufwand für den Fahrer und ersetzt die sperrige (und schwer vorhersehbare) Zustandsmaschine von OpenGL.
Das Bauen mit Vulkan würde vor allem im Kontext der Gear VR einen enormen Unterschied bewirken, und für Spieleentwickler ist es eine großartige Möglichkeit, mehr in dieser recht begrenzten, aber deutlich zugänglicheren Form der VR zu tun. Wus Unterstützung für Samsung als Spieleentwickler, die Gear VR mit Vulkan zu verbessern, könnte nicht deutlicher sein.
Bei Verwendung der Gear VR wird der Prozessor derzeit so stark beansprucht, dass der Akku in etwa 50 Minuten leer ist, und die Latenz ist wirklich schrecklich. Wenn es jemals einen äußerst überzeugenden Fall für einen offenen Standard wie Vulkan gegeben hat, in Assembly zu bleiben und diese grafische Ebene wirklich zu optimieren, dann ist dies der Fall. Wir werden nicht für immer an Glas klopfen, du musst dich fragen, wohin wir gehen. Der Aufbau von VR und diesen 3D-Technologien ist absolut kritisch. Wenn Samsung hier eine Art Testfall sein soll, ist dies optimal. Dies ist der Ort, an dem diese Technologie dringend benötigt wird.
Es besteht kein Zweifel, dass dies das genaue Gegenteil einer Leistungssteigerung über Nacht sein wird, aber das Potenzial für Vulkan, Türen für bessere Erfahrungen zu öffnen, könnte nicht klarer sein. Mit dem Galaxy S7 und dem S7 Edge ist dies ein erster Schritt für Samsung in Richtung eines leistungsstarken neuen Gaming- und VR-Erlebnisses und eine gute Zeit, um sich von der Konkurrenz abzuheben und zu behaupten, dass sie an erster Stelle standen.