Wenn Sie gerne die neuesten Technologien im Auge behalten, müssen Sie von Vulkan gehört haben. Die Vulkan-API ist die neueste und beste Grafik-APIs, die von der Khronos Group, den Menschen hinter dem aktuellen Industriestandard OpenGL, angekündigt wurde. Der Projektname Vulkan wurde auf der Game Developers 'Conference 2015 offiziell bekannt gegeben, und die erste Version der API wurde im Februar 2016 eingeführt. Die neue API soll Spielegrafiken auf die nächste Ebene bringen, also, wenn Sie sich für das interessieren Details, wir sind hier, um es Ihnen zu geben.
Wir besprechen, was die Vulkan-API ist, wie sie sich von ihrem Vorgänger OpenGL unterscheidet und wie die Vulkan-API die Art und Weise verändern kann, in der Spiele und andere grafikintensive Anwendungen in naher Zukunft entwickelt werden. Lesen Sie weiter, um mehr über diese aufregende Entwicklung in der Welt des Renderns und der Grafik zu erfahren.
Was ist die Vulkan-API?
Vor ein paar Jahren zeigte AMD Mantle, eine API, die auf 3D-Spiele abzielte, und während es sich als vielversprechendere Lösung für das Rendern von Grafiken erwies, brach AMD das Projekt ab. Anschließend übergab AMD die Mantle-API-Komponenten an die Khronos Group, um eine Standard-API für das Rendern zu entwickeln. Nun, das Ergebnis ist die neue Vulcan-API.
Die Vulkan-API ist eine Rendering-API mit geringem Overhead, die die heutzutage allgegenwärtigen Multi-Core-CPUs besser nutzen kann und auch Programme mit direkterem Zugriff auf die CPU und die GPU des Systems bietet. Es ist auch OS-agnostisch. Dies bedeutet, dass Anwendungen, die die Vulkan-API verwenden, leicht portierbar sind.
Als begeisterte Spieler und Spieleenthusiasten haben wir uns entschlossen, einen Blick in die Zukunft zu werfen, wie Spiele in Kürze entwickelt werden und wie (wenn überhaupt) unser Spielerlebnis verbessert wird.
Eigenschaften
Die Vulkan-API verfügt über eine Reihe von Funktionen, die sie anders und besser machen als ihr Vorgänger OpenGL:
1. Die Vulkan-API versucht, die Verarbeitungslasten in einer Multi-Core-Umgebung gleichmäßig auf jeden Kern zu verteilen. Dies bedeutet, dass jeder Kern des Prozessors verwendet wird, wodurch die Effizienz maximiert wird .
- Dies macht beim Rendern von Grafiken, die viele Draw-Aufrufe erfordern, einen sehr spürbaren Unterschied.
- Bei älteren APIs ist die CPU in der Regel ein Engpass. Allerdings nutzt Vulkan Multi-Core-CPUs so gut, dass es eher zu Engpässen in der GPU kommt.
2. Die Vulcan-API bietet direkten Zugriff auf die GPU, wodurch unnötiger Aufwand beim Zugriff auf die GPU für Zugriffe und andere GPU-Einrichtungen vermieden wird.
- Dies bedeutet, dass schwerere Spiele jetzt nicht so CPU-intensiv sind, wie sie derzeit sind. Treiber spielen auch eine geringere Rolle beim Zugriff auf die GPU, wodurch die Informationsübertragung wesentlich schneller erfolgt.
3. Die API ist auch so konzipiert, dass sie vollständig plattformübergreifend ist .
- Keine Verzweigungs-APIs mehr für Handys, Desktops und Konsolen. Die Vulkan-API ist für jedes Gerät mit einer kompatiblen GPU gleich.
4. Während OpenGL die GPU-Speichernutzung und -Synchronisierung verborgen hielt, macht Vulkan dies offen und gibt den Entwicklern eine noch bessere Kontrolle über die GPU und deren Verwendung.
- Mit Vulkan können die Entwickler steuern, wie die GPU Texturen formatiert, den Speicher verwaltet und die Synchronisierung durchführt.
- Es verbirgt jedoch immer noch genügend Informationen, um die plattformübergreifende Kompatibilität zu gewährleisten .
5. Vulkan verwendet die SPIR-V-Zwischensprache für paralleles Computing und Grafik. SPIR-V wurde wie seine Vorgänger SPIR1.2 und SPIR2.0 von der Khronos Group entwickelt, mit dem Unterschied, dass SPIR-V keine LLVM verwendet. Mit SPIR-V kann Vulkan auf jeder Plattform einen gemeinsamen Front-End-Compiler verwenden. Entwickler müssen auch keinen Kernel und Shader-Code versenden, und die Treiberimplementierung wird vereinfacht.
Wie Vulkan uns als Endbenutzer helfen könnte
Die Vulkan-API kann, wenn sie von Entwicklern mit vollem Potenzial umgesetzt wird, die Spielerfahrung des Endbenutzers (das sind Sie und ich!) Drastisch verbessern. Denken Sie an Grafiken auf mobilen Geräten auf Konsolenebene, vielleicht sogar an Desktopgrafiken für hochwertige Flaggschiffe mit kompetenten Prozessoren!
1. Da die meisten mobilen SoCs heutzutage auch Multi-Core- Prozessoren sind, wird Vulkan die Prozessoren so weit wie möglich nutzen, um Spiele glatter zu gestalten (höhere FPS).
2. Da Vulkan einen geringen Overhead-Zugriff auf die GPU des Geräts bietet, bedeutet dies, dass Spiele nun in der Lage sind, die Zeit, die benötigt wird, um auf GPU-Ressourcen zuzugreifen, erheblich zu verkürzen. Dies führt wiederum zu besseren Grafiken bei höheren Frames pro Sekunde, indem die Fähigkeiten der GPU maximal genutzt werden .
3. Obwohl plattformübergreifende Funktionen die Vereinfachung der Portabilität für Spiele nicht direkt auf Sie als Endbenutzer auswirken, bedeutet dies, dass Ihre bevorzugten Spiele und grafikintensiven Anwendungen möglicherweise auf fast jeder Plattform verfügbar sind . Die Möglichkeiten sind endlos und nur durch unsere Vorstellungskraft begrenzt.
4. Spiele können auch für eine reibungslosere Leistung sorgen, indem sie sicherstellen, dass die GPU mehr Aufmerksamkeit auf Dinge legt, die für den Benutzer sofort sichtbar sind .
Optionen für Entwickler
Eine Low-Level-API mit niedrigem Overhead für Grafiken ist zwar zweifellos eine gute Idee, ist aber nicht für jeden Entwickler ein offensichtlicher Anziehungspunkt, insbesondere für die neuen. Das Programmieren auf einer niedrigeren Ebene, näher an der Hardwareebene, erfordert etwas mehr Geschicklichkeit als die Programmierung auf einer höheren Ebene, die mehr abstrahiert ist. Dies ist keineswegs ein Schock. Es ist ziemlich offensichtlich und genau aus diesem Grund haben Entwickler drei verschiedene Möglichkeiten, Vulkan für ihre Entwicklungsprojekte zu nutzen.
1. Verwenden Sie die Vulkan-API direkt
- Dies bietet den niedrigsten Zugriff auf die Hardware und ist offensichtlich nicht für jeden eine Wahl. Mit dieser Ebene können jedoch Benchmarking-Tools für andere mit Vulkan entwickelte Anwendungen erstellt werden.
2. Verwenden Sie Bibliotheken
- Möglicherweise die am besten geeignete Option für Entwickler, die von OpenGL zu Vulkan wechseln.
- Die meisten Bibliotheken werden Open Source sein. Entwickler, die Erfahrung mit der Entwicklung von OpenGL haben, können also versuchen, ihre OpenGL-Anwendungen relativ einfach auf die Vulkan-API zu portieren, anstatt eine vollständige Überholung durchführen zu müssen oder von vorne zu beginnen.
3. Verwenden Sie mit Vulkan optimierte Game Engines
- Wir sind sicher, dass hier die meisten Entwickler einsteigen werden. Game Engines werden von etablierten, erfahrenen Industrie-Schwergewichten entwickelt und entwickelt und können von Entwicklern (sowohl erfahrenen als auch Anfängern) problemlos verwendet werden, um Spiele zu erstellen, die die Vorteile nutzen von der Vulkan-API angeboten.
- Entwickler wie Epic Games (Unreal Engine) und Unity (Unity Engine) haben bereits die Unterstützung von Vulkan in ihren kommenden Engines angekündigt, und viele andere haben angekündigt, dass sie folgen werden.
SIEHE AUCH: APFS verstehen: Das neue Dateisystem von Apple
Seien Sie aufgeregt!
Falls der Artikel Sie nicht überzeugt hat… seien Sie aufgeregt! Jetzt! Vulkan verspricht, eine bahnbrechende Entwicklung bei Grafik-APIs zu sein, die unser Spielerleben verbessern wird. Es gibt bereits Videos mit Vergleichen zwischen der Leistung von Vulkan und OpenGL, und die Ergebnisse sind - ganz einfach - erstaunlich. Wenn es sich bei diesen Videos um Hinweise handelt, können Sie dank der neuen Vulcan-API überall, einschließlich Ihres Handys, erstaunliche Grafikqualität erleben!
Also, was denkst du über Vulkan? Denken Sie, dass dies eine deutliche Verbesserung gegenüber dem aktuellen OpenGL-Standard sein wird? Lass es uns in den Kommentaren unten wissen.