Si vous aimez garder un œil sur les dernières technologies, vous devez avoir entendu parler de Vulkan. L'API Vulkan est la dernière et la plus importante des API graphiques, annoncée par le groupe Khronos, qui est à l'origine du standard actuel OpenGL. Le nom du projet Vulkan a été officiellement annoncé lors de la conférence des développeurs de jeux en 2015 et la première version de l'API a été lancée en février 2016. La nouvelle API vise à amener les graphismes de jeu à un niveau supérieur, alors si vous êtes intéressé par le détails, nous sommes ici pour vous le donner.
Nous discutons de ce qu'est l'API Vulkan, de sa différence par rapport à son prédécesseur OpenGL et de la façon dont l'API Vulkan pourrait changer la manière dont les jeux et autres applications gourmandes en ressources graphiques sont développés dans un proche avenir. Poursuivez votre lecture pour explorer ce développement passionnant dans le monde du rendu et des graphiques.
Qu'est-ce que l'API Vulkan?
Il y a quelques années, AMD a dévoilé Mantle, une API conçue pour les jeux en 3D. Même si cette solution promettait de devenir une solution plus vivante pour le rendu des graphiques, AMD a tué le projet. AMD a ensuite confié les composants de l'API Mantle au groupe Khronos pour développer une API standard de rendu. Le résultat est la nouvelle API Vulcan.
L'API Vulkan est une API de rendu peu onéreuse qui permet de mieux utiliser les processeurs multicœurs omniprésents de nos jours. Elle offre également aux programmes un accès plus direct au processeur et au GPU du système. Il est également agnostique OS. Cela signifie que les applications utilisant l'API Vulkan seront facilement portables.
En tant que joueurs passionnés et passionnés de jeux, nous avons décidé de jeter un coup d'œil sur la manière dont les jeux seront développés prochainement et sur la manière dont (le cas échéant) cela va améliorer notre expérience de jeu.
Caractéristiques
L'API Vulkan a beaucoup de fonctionnalités qui le rendent différent et meilleur que son prédécesseur OpenGL:
1. L'API Vulkan tente d'équilibrer les charges de traitement de manière égale entre tous les cœurs dans un environnement multicœur. Cela signifie que chaque cœur du processeur est utilisé, optimisant ainsi l'efficacité .
- Cela fera une différence très notable dans le rendu des graphiques nécessitant beaucoup d'appels de tirage.
- Avec les API héritées, le plus souvent, le processeur est un goulot d'étranglement. Cependant, Vulkan utilise si bien les processeurs multicœurs qu'il est plus probable qu'un goulet d'étranglement se trouve dans le GPU.
2. L'API Vulcan offrira un accès direct au GPU, ce qui évitera des surcoûts inutiles lors de l'accès au GPU pour les appels de tirage et autres installations du GPU.
- Cela signifie que les jeux plus lourds ne seront plus aussi gourmands en ressources processeur qu'aujourd'hui. En outre, les pilotes joueront un rôle moins important dans l’accès au GPU, accélérant ainsi considérablement le transfert d’informations.
3. L'API est également conçue pour être complètement multiplateforme .
- Fini les API de branchement pour mobiles, ordinateurs de bureau et consoles. L'API Vulkan sera la même sur tous les périphériques dotés d'un GPU compatible.
4. Tandis qu'OpenGL gardait cachée l'utilisation de la mémoire du GPU et la synchronisation, Vulkan l'expose et donne aux développeurs un contrôle encore plus efficace sur le GPU et son utilisation.
- Vulkan permet aux développeurs de contrôler la façon dont le processeur graphique formate les textures, gère la mémoire et effectue la synchronisation.
- Cependant, il cache encore assez d'informations pour maintenir la compatibilité entre plates-formes .
5. Vulkan utilise le langage intermédiaire SPIR-V pour l'informatique parallèle et les graphiques. SPIR-V, à l'instar de ses prédécesseurs SPIR1.2 et SPIR2.0, a été développé par le groupe Khronos, à la différence que SPIR-V n'utilise pas LLVM. SPIR-V permet à Vulkan d’avoir un compilateur frontal commun sur chaque plate-forme. Les développeurs n'ont également pas besoin d'expédier le code de shader et le noyau, et la mise en œuvre du pilote est simplifiée.
Comment Vulkan pourrait nous aider en tant qu'utilisateur final
L'API Vulkan, lorsqu'elle est mise en œuvre à son plein potentiel par les développeurs, peut considérablement améliorer l'expérience de jeu de l'utilisateur final (c'est-à-dire vous et moi!). Pensez aux graphiques de niveau console sur les appareils mobiles, peut-être même aux graphiques de bureau pour les vedettes haut de gamme avec des processeurs compétents!
1. Étant donné que la plupart des SoC mobiles actuels sont également multicœurs, Vulkan utilisera les processeurs dans toute la mesure du possible, ce qui rend les jeux plus fluides (FPS plus élevés).
2. En outre, comme Vulkan fournit un accès à faible coût au GPU de l'appareil, les jeux seront désormais en mesure de réduire considérablement le temps nécessaire pour accéder aux ressources du GPU. Encore une fois, cela se traduit par de meilleurs graphiques à un nombre d'images par seconde plus élevé en exploitant au maximum les capacités du GPU .
3. Bien que les fonctionnalités multi-plateformes, faciliter la portabilité des jeux ne vous affectent pas directement en tant qu'utilisateur final, cela signifie que vos jeux préférés et vos applications graphiques intensives pourraient bien être disponibles sur presque toutes les plates-formes existantes . Les possibilités sont infinies et limitées seulement par notre imagination.
4. Les jeux seront également en mesure d'assurer des performances plus homogènes en veillant à ce que le processeur graphique accorde plus d'attention (lisez: alloue plus de mémoire et donne la priorité à) à ce qui est immédiatement visible pour l'utilisateur, ce qui rend le jeu plus résistant aux décalages et aux baisses de cadre .
Options pour les développeurs
Bien qu'une API de bas niveau et peu onéreuse pour les graphiques soit sans aucun doute une bonne idée, ce n'est pas une attraction évidente pour tous les développeurs, en particulier les nouveaux. Programmer à un niveau plus bas, plus proche du matériel nécessite un peu plus de prouesse que de programmer à un niveau plus élevé, ce qui est plus abstrait. Ce n'est en aucun cas un choc. C'est assez évident, et c'est précisément pourquoi les développeurs auront trois options différentes sur la façon d'utiliser Vulkan pour leurs projets de développement.
1. Utilisez directement l'API Vulkan
- Cela fournira l’accès au plus bas niveau au matériel, et ne sera évidemment pas un choix pour tout le monde. Cependant, ce niveau peut être utilisé pour créer des outils d'analyse comparative pour d'autres applications développées à l'aide de Vulkan.
2. Utiliser les bibliothèques
- Peut-être l'option la plus viable pour les développeurs qui passent d'OpenGL à Vulkan.
- La plupart des bibliothèques seront open source. Les développeurs ayant une expérience du développement utilisant OpenGL peuvent donc essayer de transférer leurs applications OpenGL vers l'API Vulkan avec une relative facilité, sans avoir à effectuer une refonte complète ou à partir de zéro.
3. Utiliser les moteurs de jeu optimisés avec Vulkan
- Nous sommes sûrs que la plupart des développeurs y accéderont. Les moteurs de jeu sont conçus et développés par des poids lourds bien établis et expérimentés dans l'industrie et peuvent être facilement utilisés par les développeurs (débutants et expérimentés) pour créer des jeux utilisant les avantages offert par l'API Vulkan.
- Des développeurs tels qu'Epic Games (Unreal Engine) et Unity (Unity Engine) ont déjà annoncé la prise en charge de Vulkan dans leurs prochains moteurs, et de nombreux autres ont annoncé leur intention de les suivre.
CONSULTER ÉGALEMENT: Comprendre APFS: le nouveau système de fichiers d'Apple
Être excité!
Au cas où l'article ne vous convaincrait pas… excitez-vous! À présent! Vulkan promet d’être le genre de développement révolutionnaire d’API graphiques qui améliorera la vie de nos joueurs. Il existe déjà des vidéos de comparaisons entre les performances de Vulkan et d'OpenGL, et les résultats sont tout simplement incroyables. Si ces vidéos vous donnent une bonne idée, préparez-vous à vivre une qualité graphique incroyable partout dans le monde, y compris sur vos téléphones portables, grâce à l'arrivée de l'API Vulcan!
Alors, que penses-tu de Vulkan? Pensez-vous que ce sera une grande amélioration par rapport au standard OpenGL actuel? Faites-nous savoir dans la section commentaires ci-dessous.