Metal : des outils sur Windows pour faciliter la création de jeux pour les plateformes Apple

Stéphane Moussie |

Dans tous les logiciels mis à disposition par Apple à l'occasion de la WWDC 2020, il y en a un qui est passé un peu inaperçu, le Metal Developer Tools for Windows. Il s'agit d'une « collection d'outils et de bibliothèques sur Windows qui permet aux développeurs de créer des contenus/programmes Metal à destination d'iOS, tvOS et macOS. »

Graphique issue de la session Build GPU binaries with Metal

Qu'est-ce que cela signifie ? Comme Apple le reconnait dans les notes de version de cette nouvelle boîte à outils, beaucoup de créateurs de jeux vidéo ont un flux de production basé sur Windows, notamment pour la création des assets, c'est-à-dire les ressources telles que les images, les textures ou encore les sons.

L'une des dernières étapes dans la création des assets est leur compilation qui sert à les inclure ensuite dans le jeu. Alors que cette étape devait se faire jusqu'à présent sur Mac pour Metal (l'API graphique d'Apple), la nouvelle boîte à outils permet aux studios de le faire sur leurs PC, simplifiant ainsi leur travail. Un Mac reste néanmoins indispensable en bout de chaîne pour finaliser et soumettre le jeu.

Cette accessibilité de Metal sur Windows est importante pour que le Mac soit alimenté en jeux, car Apple va laisser tomber OpenGL à terme (les Mac Apple Silicon vont néanmoins gérer cette ancienne API graphique au début) et elle ne semble toujours pas avoir l'intention de prendre en charge Vulkan, l'API graphique multiplateforme de nouvelle génération.

Tags
avatar raoolito | 

"car Apple va laisser tomber OpenGL à terme (les Mac Apple Silicon vont néanmoins gérer cette ancienne API graphique au début) "

Ancienne sur mac peut-être...

avatar fabricepsb71 | 

De toute façon ils négligent OpenGL depuis des années maintenant

avatar Lameth | 

J’ai toujours eu du mal à comprendre la stratégie d’Apple concernant la diffusion des outils pour utiliser leurs techno. Ça fait des années qu’ils auraient du faire ça pour augmenter l’adoption et le nombre d’apps

avatar IceWizard | 

@Lameth

C’est surtout pour les jeux, un domaine dont Cuppertino se fichait royalement jusqu’à très récemment.

En fantasmant très fort, on peut rêver à un accord Microsoft/Apple pour developer un driver Metal pour DirectX, permettant à des applications et des jeux Windows de tourner sur une plateforme MacOS. Ah zut, je viens de me réveiller, tant pis ..

avatar Lameth | 

@IceWizard

Peut être qu’ils pourraient échanger ça contre quelques proc Apple silicon dans leur surface 😂

avatar IceWizard | 

@Lameth

« Peut être qu’ils pourraient échanger ça contre quelques proc Apple silicon dans leur surface 😂 »

C’est l’heure de la sieste. Je vois que je ne suis pas le seul à faire des rêves étranges..

avatar en chanson | 

@Lameth

Ou l'inverse du nvidia serait installé sur du Mac pour éviter du hardware dépassé

avatar oomu | 

"driver Metal pour DirectX"

cela me parait irréaliste rien que techniquement.

mais j'avoue que je ne rêve plus depuis la chute de tous les idéaux pour le 21e siècle...

avatar IceWizard | 

@oomu
"cela me parait irréaliste rien que techniquement."

DirectX a été conçu à la base pour fonctionner avec n'importe quel GPU 2D/3D. Je ne suis pas intime avec les dernières versions, mais à moins d'un changement fondamental dans l'architecture interne cela doit être aussi valable pour DirectX 10 et 11.

C'est un moteur graphique virtuel, tournant sur un GPU virtuel. Les drivers vidéos fournis par les constructeurs sont des émulations de ce GPU virtuel sur le hardware réel. Au fur et à mesure du temps, les fabricants de cartes ont fait évoluer leurs architectures pour que le hardware soit le plus proche possible du GPU virtuel, pour avoir les meilleurs performances possibles.

Je présume que ton objection tient au fait que l'architecture des GPU Axx soit (vraisemblablement) très différent du GPU virtuel de DirectX. Mais cela reste toujours de l'émulation (enfin sauf si les dernières version de DirectX ont fait sauter cette étape, mais ça m'étonnerais). Apple a la possibilité technique de réaliser un driver émulant un GPU DirectX à partir des instructions Metal. Cela ne sera pas aussi efficient qu'une carte graphique actuelle, dont le GPU physique reprend l'architecture virtuel, mais cela devrais fonctionner quand même.

Le problème est plus d'ordre légal ("dis monsieur Seattle, je peux utiliser votre licence pour .. ? " "NON !", "Pourquoi ?" "Parce que je dis NON !".) que technique.

avatar lmouillart | 

Il ne faut pas trop compter sur un support de Microsoft. Du côté de Valve c'était tout à fait envisageable, mais les modifications incessantes des api ont eu raison de la volonté de Valve : https://github.com/ValveSoftware/Proton/commit/a84120449d8177fa40f3de729e55d238d3c24877
Tout ce qui est en dehors du giron Apple (hormis Adobe, MS et quelques gros) est de toute façon amener à baisser les bras tôt ou tard.

avatar oomu | 

Apple veut avant tout vendre _ses_ machines.

avatar Lameth | 

@oomu

C’est sur. C’était surtout une blague que je faisais pour rejoindre le commentaire précédent 😊

avatar mne | 

Sachant que pour les développeurs qui utilisent des moteurs standard(unity ou unreal par exemple), le flux de production des moteurs intègre un compilateur metal pour les assets même sur Windows (a moins que les assets ne soient recompiles lors de la build finale du projet, depuis un mac donc)

avatar malcolmZ07 | 

analyse très interessante pour ceux qui voudrait plus d'information :
youtube[.]com/watch?v=6Zkyq5FBjAQ

avatar bonnepoire | 

L’apple tv deviendrait une vraie console de jeux.

avatar Mrleblanc101 | 

Pourquoi supporter OpenGL et Vulkan alors que l'architecture des GPU Apple est complètement différente de celle de AMD/nvidia (Tile Rendering). C'est certain qu'Apple veux que les devs utilise ses propres API pour sortir le meilleurs de ses puces.

avatar lmouillart | 

Tous les GPU récents même ceux d'Intel, c'est dire gèrent le tile rendering.

avatar oboulot | 

@Mrleblanc101

Sans carte graphique dédié les jeux macs auront toujours des decenies de retard sur les consoles et pc gamers.
Que Apple ouvre un peu plus IOS aux autres acteurs comme Nvidia GeForce Now ou stadia par exemple ça serait déjà un bon début

avatar Manu | 

Ça craint grave chez les inconditionnels Windows : https://youtu.be/5DpyBAwV-r4

CONNEXION UTILISATEUR