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 grande des API graphiques, annoncées par Khronos Group, qui sont les personnes derrière la norme industrielle actuelle OpenGL. Le nom du projet Vulkan a été officiellement annoncé lors de la Game Developers 'Conference en 2015, et la première version de l'API a été lancée en février 2016. La nouvelle API vise à faire passer les graphismes du jeu à un niveau supérieur, donc si vous êtes intéressé par le détails, nous sommes là pour vous le donner.
Nous discutons de ce qu'est l'API Vulkan, en quoi elle est différente de son prédécesseur OpenGL et comment l'API Vulkan pourrait changer la façon dont les jeux et autres applications graphiques intensives sont développés dans un proche avenir. Lisez la suite pour découvrir 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 présenté Mantle, une API destinée aux jeux 3D et, bien qu'elle se montre prometteuse en tant que solution plus rapide pour le rendu des graphiques, AMD a tué le projet. Ensuite, AMD a donné les composants de l'API Mantle au groupe Khronos pour développer une API standard pour le rendu. Eh bien, le résultat est la nouvelle API Vulcan.
L'API Vulkan est une API de rendu à faible coût qui peut mieux utiliser les processeurs multicœurs qui sont omniprésents de nos jours et fournira également aux programmes un accès plus direct au processeur et au GPU du système. Il est également indépendant du système d'exploitation. Cela signifie que les applications qui utilisent l'API Vulkan seront facilement portables.
Étant nous-mêmes des joueurs passionnés et des passionnés de jeux, nous avons décidé de jeter un coup d'œil sur la façon dont les jeux seront bientôt développés et comment (le cas échéant) amélioreront-ils notre expérience de jeu..
Caractéristiques
L'API Vulkan possède de nombreuses fonctionnalités qui la rendent différente et meilleure que son prédécesseur OpenGL:
1. L'API Vulkan tente d'équilibrer les charges de traitement de manière égale entre chaque cœur dans un environnement multicœur. Cela signifie que chaque cœur du processeur est utilisé, par conséquent maximiser l'efficacité.
- Cela fera une différence très notable dans le rendu des graphiques qui nécessitent beaucoup d'appels de dessin.
- 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 goulot d'étranglement soit trouvé dans le GPU à la place..
2. L'API Vulcan offrira accès direct au GPU, ce qui garantira d'éviter les frais généraux inutiles lors de l'accès au GPU pour les appels de tirage et d'autres installations GPU.
- Cela signifie que les jeux plus lourds ne seront plus aussi gourmands en CPU qu'ils le sont actuellement. En outre, les pilotes joueront un rôle moins important dans l'accès au GPU, rendant le transfert des informations beaucoup plus rapide..
3. L'API est également conçue pour être complètement multiplateforme.
- Fini les API de branchement pour les mobiles, les ordinateurs de bureau et les consoles. L'API Vulkan sera la même sur tous les appareils dotés d'un GPU compatible.
4. Alors qu'OpenGL a gardé l'utilisation de la mémoire GPU et la synchronisation cachées, Vulkan expose cela et donne encore mieux aux développeurs contrôle sur le GPU et comment il est utilisé.
- Vulkan permet aux développeurs de contrôler la façon dont le GPU formate les textures, gère la mémoire et effectue la synchronisation.
- Cependant, il cache toujours suffisamment d'informations pour maintenir compatibilité multiplateforme.
5. Vulkan utilise le Langage intermédiaire SPIR-V pour le calcul parallèle et les graphiques. SPIR-V, comme 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 pas non plus besoin de livrer le noyau, le code de shader et l'implémentation du pilote est simplifiée.
Comment Vulkan pourrait nous aider en tant qu'utilisateurs finaux
L'API Vulkan, lorsqu'elle est mise en œuvre à son plein potentiel par les développeurs, peut améliorer considérablement l'expérience de jeu de l'utilisateur final (c'est vous et moi!). Pense graphiques au niveau de la console sur les appareils mobiles, peut-être même des graphismes de bureau pour les produits phares haut de gamme avec des processeurs compétents!
1. Étant donné que la plupart des SoC mobiles de nos jours sont également multicœurs, Vulkan utiliser au maximum les processeurs possible, rendant les jeux plus fluides (FPS plus élevé).
2. De plus, étant donné que Vulkan fournit un accès faible au processeur graphique de l'appareil, cela signifie que les jeux pourront désormais réduire considérablement le temps nécessaire pour accéder aux ressources GPU. Encore une fois, cela se traduit par de meilleurs graphismes à des images plus élevées par seconde en utiliser au maximum les capacités du GPU.
3. Bien que les capacités multiplateformes, faciliter la portabilité des jeux ne vous affectent pas directement en tant qu'utilisateur final, cela signifie que votre favori les jeux et les applications graphiques intensives pourraient bien être disponibles sur presque toutes les plates-formes là-bas. Les possibilités sont infinies et limitées uniquement par notre imagination.
4. Les jeux pourront également assurer des performances plus fluides en veillant à ce que le GPU accorde plus d'attention (lire: alloue plus de mémoire et donne la préférence à) aux choses qui sont immédiatement visibles pour l'utilisateur, rendant le jeu plus immunisé contre les retards et les chutes d'images.
Options pour les développeurs
Si une API graphique de bas niveau et à faible coût est sans aucun doute une bonne idée, ce n'est pas une attraction évidente pour tous les développeurs, en particulier les nouveaux. La programmation à un niveau inférieur, plus proche du matériel nécessite un peu plus de prouesses que la programmation à un niveau supérieur, qui est plus abstrait. Ce n'est en aucun cas un choc. C'est assez évident, et c'est exactement 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 le plus bas niveau d'accès 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 de benchmarking pour d'autres applications développées avec Vulkan.
2. Utiliser les bibliothèques
- Probablement l'option la plus viable pour les développeurs qui passent d'OpenGL à Vulkan.
- La plupart des bibliothèques seront open source, donc les développeurs qui ont de l'expérience dans le développement avec OpenGL peuvent essayer de porter leurs applications OpenGL vers l'API Vulkan avec une relative facilité, plutôt que d'avoir à faire une refonte complète ou à partir de zéro..
3. Utilisez des moteurs de jeu optimisés avec Vulkan
- Nous sommes sûrs que c'est là que la plupart des développeurs entreront. Les moteurs de jeu sont conçus et développés par des poids lourds bien établis et expérimentés de l'industrie et peuvent être facilement utilisés par les développeurs (expérimentés et débutants) pour créer des jeux qui utilisent les avantages proposé par l'API Vulkan.
- Des développeurs tels que Epic Games (Unreal Engine) et Unity (Unity Engine) ont déjà annoncé la prise en charge de Vulkan dans leurs prochains moteurs, et beaucoup d'autres ont annoncé leur intention de suivre..
VOIR ÉGALEMENT: Comprendre APFS: le nouveau système de fichiers d'Apple
Être excité!
Au cas où l'article ne vous aurait pas convaincu… excitez-vous! À présent! Vulkan promet d'être le genre de développement révolutionnaire dans les API graphiques qui amélioreront nos vies de jeu. Il existe déjà des vidéos de comparaisons entre les performances de Vulkan et d'OpenGL, et les résultats sont - tout simplement - étonnants. Si ces vidéos sont une indication, préparez-vous à découvrir une qualité graphique incroyable partout, y compris vos mobiles, tout cela grâce à l'arrivée de l'API Vulcan!
Alors, que pensez-vous de Vulkan? Pensez-vous que ce sera une grande amélioration par rapport à la norme OpenGL actuelle? Faites-nous savoir dans la section commentaires ci-dessous.