Metal, le DirectX d’Apple ?

Soumis par Anthony Nelzin-... le 10h30

La présentation de Swift a tant marqué les esprits qu’on oublierait presque que ce langage de haut niveau a partagé la scène du Moscone Center avec Metal. À en croire Ryan Smith d’Anandtech et le co-créateur de DirectX Alex St. John, cette nouvelle API graphique de bas niveau pourrait avoir des implications bien au-delà des seuls jeux iOS.

Le Metal d’Apple rejoint le DirectX 12 de Microsoft et le Mantle d’AMD dans le petit groupe des récentes APIs graphiques de bas niveau. Le confort du travail à haut niveau se paye par une certaine inefficacité dans l’exploitation des ressources ; se rapprocher du « métal » permet d’en tirer pleinement parti, au prix d’un développement plus complexe. Or les cartes graphiques sont aujourd’hui bien plus puissantes que les processeurs, y compris sur mobile : pour ne pas être ralenti par l’exécution d’une API haut niveau ou des pilotes, mieux vaut utiliser des API directement conçues pour les cartes graphiques et descendre au plus bas niveau possible.

Toutes les API graphiques de bas niveau ne sont pas égales, puisque certaines doivent prendre en compte plusieurs plateformes, et la plupart doivent être adaptées à plusieurs architectures. Dans ce sens, Metal est sans doute l’une des plus optimisées : Apple ne doit s’inquiéter que d’une seule plateforme et d’un seul jeu de composants — dont un processeur qu’elle conçoit en interne et une puce graphique conçue par une entreprise dans laquelle elle a investi quelques millions de dollars. Et ce n’est pas une éventuelle adaptation au Mac qui « diluera » Metal : Microsoft a bien plus à faire avec DirectX et les centaines de configurations possibles dans le monde du PC.

Alex St. John voit aussi dans Metal un moyen pour Apple d’abandonner, à terme, OpenGL. À l’époque de la création de DirectX, il expliquait :

Comment faire adopter nos technologies à toutes ces sociétés, indépendamment de leurs intérêts ? […] J’ai compris que le gros de mon travail consistait à exploiter la technologie pour créer un effet de levier, une force économique qui forcerait l’argent à couler vers Microsoft, qui forcerait les gens à aller vers Microsoft.

Et effectivement, Microsoft a longtemps verrouillé le marché du jeu vidéo sur ordinateur personnel, au détriment d’Apple d’ailleurs. La firme de Cupertino est-elle capable d’un tel cynisme aujourd’hui ? Sans doute, mais Metal est aussi une technologie qui peut réellement améliorer les performances graphiques sous iOS — la démonstration réalisée par Electronic Arts étant de ce point de vue très impressionnante. Et ce n’est pas tant pis si dans le même temps, elle s’éloigne d’un OpenGL qu’elle n’a jamais su exploiter à son plein potentiel, mais qui profite à ses concurrents.

L’iPhone étant aujourd’hui la console portable la plus populaire, les développeurs de jeux ont tout intérêt à exploiter Metal pour obtenir les meilleures performances possibles. Les studios d’envergure et des fournisseurs comme Unity continueront à adapter leurs moteurs à d’autres plateformes, mais les plus petits studios et les indépendants se contenteront peut-être d’aller au plus simple et au plus rémunérateur. C’est-à-dire d’aller vers iOS.