«Vulkan est une API graphique et calcul de nouvelle génération qui fournit un accès multiplateforme à haute efficacité aux GPU modernes utilisés dans une grande variété d'appareils, des PC et des consoles aux téléphones mobiles et aux plates-formes embarquées», décrit cette nouvelle API son développeur principal, Consortium de technologie à but non lucratif Khronos Group, sur son site officiel.
Le groupe Khronos a annoncé pour la première fois Vulkan lors de la conférence Game Developers en 2015, mais la base technologique sur laquelle Vulkan se dresse à 2013, lorsque AMD a initialement développé Mantle, une API de rendu à faible échelle ciblant les jeux vidéo 3D, en coopération avec Dice et fait un don et don au groupe Khronos pour lancer le développement de Vulkan.
Vulkan est souvent appelé «un successeur spirituel à OpenGL» même si sa philosophie est très différente. OpenGL et d'autres API graphiques plus anciennes ont été conçus lorsque le photoréalisme était encore un rêve lointain, et les processeurs et les GPU monocores représentaient la pointe de la technologie. À mesure que le matériel s'est amélioré, OpenGL et ses équivalents ont été prolongés à plusieurs reprises, ce qui leur permet de fonctionner sur le matériel moderne ainsi que sur du matériel qui est maintenant essentiellement obsolète.
«Le coût de cette approche a été que le comportement des GPU modernes est tellement abstrait par l'API qu'il est difficile pour l'application et le conducteur de connaître les besoins de l'autre. Le résultat est une performance imprévisible pour l'application et une complexité considérable chez le conducteur, car chaque fournisseur applique différentes optimisations du pilote dans le but de faire fonctionner rapidement les logiciels », explique Samsung.
Selon Robert Hallock, responsable du marketing technique mondial d'AMD, la société voulait apporter OpenGL, une interface de programmation d'applications multiplateformes de haut niveau, en langage multiplateforme pour rendre des graphiques 2D et 3D à une approche à faible surcharge. En tant qu'API explicite ", Vulkan élimine le besoin de conducteurs complexes et déplace le contrôle aux mains des développeurs de logiciels et des applications et des jeux qu'ils créent. Cela, à son tour, signifie des graphismes plus beaux, de meilleurs jeux de course et des temps de développement plus courts.
Contrairement aux API plus anciennes telles que DirectX 11 et l'OpenGL susmentionné, qui automatise l'allocation de mémoire, la construction de tampons de commande 3D et d'autres processus sur le GPU, Vulkan rapproche les développeurs de logiciels du matériel nu, ce qui leur donne plus de contrôle sur les performances, l'efficacité, et les capacités de leurs produits logiciels.
Hallock a déclaré que les développeurs «voulaient vraiment, vraiment avoir le contrôle», et c'est exactement ce que Vulkan offre: le contrôle et la précision. Étant donné que Vulkan est destiné à prendre en charge le matériel graphique actuel, il utilise mieux les GPU multi-core et réduit les goulots d'étranglement du CPU. Et contrairement à DirectX 12, qui a été annoncé par Microsoft chez GDC en 2014, Vulkan est une plate-forme agnostique, ce qui signifie qu'elle peut fonctionner sur tout, des ordinateurs personnels aux consoles en passant par les smartphones, quel que soit le système d'exploitation.
Jusqu'à l'arrivée de Vulkan, le nombre de jeux que les utilisateurs de Linux pouvaient apprécier étaient assez limités car la plupart des développeurs de jeux ont été comptés sur DirectX, qui n'est pas disponible sur Linux. Grâce à Vulkan, le nombre de jeux AAA disponibles sur Linux augmente rapidement, et les dérivés Linux tels que Valve's Steamos, un système d'exploitation Linux basé à Debian par Valve Corporation, sont devenus des alternatives viables aux consoles traditionnelles telles que Xbox ou PlayStation.
Pour profiter de Vulkan sur Linux, il est nécessaire de posséder une carte graphique qui prend en charge cette nouvelle API, et il est également nécessaire d'avoir des pilotes graphiques à jour installés et correctement configurés. À l'heure actuelle, Steam offre de loin la manière la plus pratique comment essayer des jeux basés sur Vulkan, tels que le principe Talos, Doom, Mad Max ou Wolfenstein II: The New Colossus.
Selon des tests de Phoronix, Vulkan permet une utilisation inférieure du processeur qu'OpenGL à travers les processeurs Intel Coffeelake des processeurs bas de gamme à haut de gamme ainsi que des processeurs Ryzen d'AMD. L'utilisation et le support du CPU inférieur pour Linux signifie que les joueurs à l'esprit budgétaire peuvent économiser une somme d'argent substantielle en achetant un processeur moins cher et en ne payant pas pour une licence Windows.
«Pour les développeurs d'applications premium, qui passent plus de temps à optimiser leur logiciel pour la portabilité et les performances que dans la création de contenu de base, Vulkan devrait réduire le temps de développement global et améliorer l'expérience client. En déplaçant plus de contrôle vers l'application, Vulkan réduit la quantité totale de travail que le CPU doit faire et permet aux développeurs d'application de mieux contrôler la façon dont ce travail se produit », déclare Samsung.
On a beaucoup parlé récemment sur l'augmentation du coût du développement du jeu et les différentes façons comment les éditeurs essaient de le compenser, par exemple en ajoutant des bonus de précommande et des microtransactions. Même si Vulkan à lui seul ne suffit pas pour récupérer la montée des coûts de développement, cela pourrait permettre aux développeurs indépendants de nous donner plus d'expériences AAA sans prix AAA, tels que le sacrifice de l'horreur psychologique cinématographique acclamé par la critique: le sacrifice de Senua.
Le plus grand degré de contrôle que Vulkan donne aux développeurs sur le traitement des graphiques en fait un bon ajustement pour la réalité virtuelle, où une faible latence et des fréquences d'images élevées sont essentielles pour atteindre l'immersion sans se sentir physiquement malade. En fait, le groupe Khronos a ajouté un soutien multi-GPU et une réalité virtuelle Vulkan à l'API Vulkan plus tôt cette année, faisant une étape supplémentaire vers 16 000 x 16 000 pixels par œil à 200 images par seconde, ce que beaucoup considèrent comme l'objectif ultime du virtuel réalité.
Vulcan est un énorme pas en avant pour les utilisateurs de Linux qui sont intéressés par les jeux informatiques, et c'est également un énorme pas en avant pour l'ensemble de l'écosystème de jeu, permettant aux développeurs de jeux de créer des jeux mieux optimisés en moins de temps. Mieux encore, vous pouvez essayer Vulcan maintenant - tout ce dont vous avez besoin est de la vapeur et une carte graphique prête pour Vulcan.