Bien moins connue (à tort d’ailleurs) que DirectX ou OpenGL, l’API Vulkan, bibliothèque open source et spécialisée dans le rendu graphique, continue son petit bonhomme de chemin dans le monde du développement des jeux vidéo. Après son incursion sur Windows, Linux, Android et même sur la Switch, voilà qu’elle va débarquer dans l’univers macOS et iOS.

Un double microcosme un peu rigide qui est surtout animé d’un côté par une version d’OpenGL (et OpenGL ES, pour iOS) peu mise en valeur par ses pilotes vieillissants et de l’autre, par Metal, l’API Apple, taillée notamment pour les jeux vidéo. Des solutions qui ont leurs atouts mais sûrement pas autant que Vulkan à en croire Khronos Group, son créateur.

Vul-quoi ?

Et plutôt que de vous (re)présenter sommairement cette bibliothèque applicative, nous vous invitons tout de suite à consulter l’article ci-dessous, à l’intérieur duquel vous découvrirez l’essentiel à savoir à son sujet.

MoltenVK, le Vulkan à la sauce iOS et macOS

Comme les développeurs réclament depuis longtemps une base commune de travail entre tous les OS, sans avoir à intégrer les subtilités d’une quatrième API, Vulkan s’est donc proposé comme candidat. Si Vulkan débarque dans l’écosystème de la firme de Cupertino, ce n’est clairement pas grâce à Apple. En effet, comme nous le disions plus haut, iOS et macOS poussent la solution, Metal.

Ainsi, pour faire en sorte que Vulkan puisse trouver une voie à emprunter, il a fallu créer MoltenVK. Pour faire simple, c’est un environnement logiciel (runtime pour les plus mordus) qui utilise une base de Metal et offre une palette presque aussi complète d’outils de création que celle de l’API Vulkan. Car oui, a priori, il a fallu faire quelques sacrifices au passage mais aucun qui ne soit indispensable ou handicapant du point de vue des développeurs.

La base de code source est la même que celle utilisée pour les autres OS pris en charge par Vulkan, facilitant ainsi la portabilité d’un titre de et vers d’autres systèmes d’exploitation. A priori, la couche MoltenVK est vraiment « fine et simple » à utiliser, ne demandant aucun portage code complexe voire une conversion des données ou des fonctions clés trop chronophages. De quoi maintenir des niveaux de performances stables et presque quantifiables à l’avance, ce qui est bien pratique pour s’assurer qu’un jeu tourne de façon fluide.

Du DoTA 2 à fond, en Vulkan, sur macOS

L’éditeur de jeux vidéo Valve a d’ores et déjà adopté MoltenVK et procède à des essais sur l’un de ses titres phares, disponible sur macOS, le MOBA DoTA 2. Les premiers graphiques publiés conjointement par Khronos Group (le père de Vulkan) et Valve montrent un gain d’images par seconde allant jusqu’à 50% dès lors que l’on passe le code de DoTA 2 pour macOS (OpenGL) à la moulinette MoltenVK. Il est vrai qu’il aurait été presque plus intéressant de suivre la même comparaison entre une version Metal et Vulkan…

Vulkan on macOS

Quoi qu’il en soit, les tests ont été menés sur trois machines, un Mac Pro et deux MacBook Pro sortis entre 2012 et 2014. On remarque tout de suite que si la machine possède une carte graphique dédiée (AMD à gauche, Nvidia au centre), les gains d’images par seconde sont bien plus importants qu’avec une solution Intel intégrée (à droite).

Précisons que les piètres performances mesurées sur les machines, en OpenGL, sont causées par les pilotes qu’Apple développent pour l’OpenGL. Ceux-ci sont les mêmes depuis des années et ne prennent pas en compte les dernières avancés de l’API. En bref, cela ne facilite pas la vie des développeurs qui doivent composer un menu avec des ingrédients datés… à moins de passer sous Metal.

Sources :
Khronos Group et Ars Technica

Cet article a été importé d’un feed RSS, cliquez-ici pour voir l’article original