Apple continue de mettre la main à la pâte pour activer Metal dans des apps professionnelles

Nicolas Furno |

MaterialX a reçu un coup de main de la part d’Apple pour prendre en charge Metal, l’API 3D maison. Ce nom ne dira sans doute rien à la majorité d’entre nous, mais cette app open-source est née au sein d’Industrial Light & Magic (ILM), la célèbre filiale de LucasFilm qui se spécialise dans les effets spéciaux destinés aux films et séries. Cet outil a servi en interne à partir de 2012 et notamment pour Star Wars, épisode VII : Le Réveil de la Force qui a signé le retour au cinéma de la mythique saga.

Son rôle principal est de définir un format de fichier pour échanger des données 3D qui peuvent servir dans les apps utilisées par les studios pour réaliser des effets spéciaux ou créer des scènes entièrement numériques. MaterialX dispose aussi d’une app pour visualiser ces données et modifier des paramètres. Son interface n’est pas pensée pour être jolie et elle est encore moins optimisée pour macOS, mais le plus important est qu’elle devrait mieux fonctionner sur les Mac grâce à la prise en charge de Metal.

On ne dirait pas comme ça, mais cette app a été optimisée pour macOS.

Depuis 2017, le code source de MaterialX est distribué sur GitHub et d’autres acteurs peuvent contribuer. Ce qui a été régulièrement le cas, avec des participations de Sony, Pixar, Adobe et on peut désormais ajouter Apple à la liste. En effet, l’ajout de Metal a été proposé par un développeur employé par Cupertino. Ce n’était pas une petite affaire, avec 162 fichiers modifiés et près de 10 000 lignes de code ajoutées au projet. Ces changements ont été fusionnés courant mars et ils sont désormais intégrés à la version 1.38.7 distribuée depuis la semaine dernière.

Ce n’est pas la première fois qu’Apple contribue à un projet open-source pour ajouter Metal. Depuis l’arrivée des puces Apple Silicon qui dépendent largement de cette API, l’entreprise l’a fait à quelques reprises, le cas le plus connu étant sans doute Blender. Apple a mobilisé plusieurs développeurs pour ajouter Metal et l’app gère depuis un an environ l’API 3D maison, de quoi améliorer ses performances sur les Mac.

3D : Apple s

3D : Apple s'engage pour améliorer Blender sur Mac

Blender 3.1 est finalisé avec la compatibilité Metal

Blender 3.1 est finalisé avec la compatibilité Metal

MaterialX n’est même pas distribuée sous la forme d’une app pour macOS, mais c’est assez facile de l’exécuter sur son Mac en ouvrant le terminal et en suivant quelques instructions. Le projet est associé à plusieurs exemples pour tester ce que l’app peut faire. De quoi noter qu’Apple n’a pas été jusqu’au bout de la démarche, puisque l’app reste bloquée à l’ère Intel et demande Rosetta pour tourner sur les Mac Apple Silicon. Pour la prochaine contribution, peut-être ?

avatar raoolito | 

maya vient bien d’etre mise a jour pour silicon, comme quoi tout arrive meme l’impensable 😁

avatar stefhan | 

Ouiii ! Ça augure bon pour mon futur passage en puce Silicon !

(Suis resté sous Intel pour la simple raison : machine de production qui roule très bien mais commence déjà à s'essouffler bien qu'elle soit de 2019...)

avatar cvergne | 

Mais a-t-on la certitude que le développeur l'a fait sur son temps de travail et non son temps libre ?

avatar fte | 

"Ce n’était pas une petite affaire, avec 162 fichiers modifiés et près de 10 000 lignes de code"

Voilà pourquoi les devs tiers ne s’y collent pas. Voilà pourquoi le graphisme sur Mac est mourant et les performances très médiocres. Du hardware uniquement spécifique, c’est une chose. Du logiciel uniquement spécifique, c’est une mort programmée. En effet sauf si Apple s’y colle soi-même.

C’est un gâchis incroyable je trouve. Mais c’est sans doute parce que je suis un vieux con qui aimait faire du taf graphique sur Mac, jusqu’à ce que le vieux con réalise il y a plus d’un lustre que le taf graphique était tellement plus agréable et performant sur PC Wintel…

avatar Gwynpl@ine | 

@fte

Je te comprends tellement ! Je reste sur Mac pour une partie, mais en 3D je suis carrément sur GNU/Linux avec Blender. Néanmoins, les dernières avancées sur ce dernier sont énormes. On va pouvoir titiller de la RTX2080 sans cœur RT avec des grosses configurations (Mac M1x et M2x). Je pense que l'arrivé du ray tracing chez Apple va bousculer tout ça.

avatar fte | 

@Gwynpl@ine

"Je pense que l'arrivé du ray tracing chez Apple va bousculer tout ça."

Aucune chance si l’API est spécifique macOS sans aucune compatibilité avec les API existantes.

Pourquoi des éditeurs tiers s’emmerderaient a financer un développement complexe pour une plateforme très minoritaire, alors que ça fonctionne (lentement) sans coûts de développement supplémentaires ? Et c’est exactement ce qui s’est passé ces dernières années. Les éditeurs ne se sont pas emmerdés et gardent leur pognon. Ce ne sont pas les conditions économiques actuelles qui vont aider à changer cela. Et du coup même les projets open source qui avaient tendance à bien supporter le Mac, c’était avant, ne se fatiguent plus à faire des apps complètes. Ça marche avec la ligne de commande, les rares utilisateurs qui veulent n’ont qu’à se démerder avec.

Je ne vois ainsi pas la situation s’inverser si la posture d’Apple en matière d’API ne change pas. Ça va continuer à spiraler vers le bas.

C’est juste un avis bien entendu. Je ne sais pas lire l’avenir et je suis à court de pétaures. C’est toujours mieux de le préciser. ;)

avatar Nihao | 

@fte
Totalement d’accord. Le matériel n’est plus le problème principal d’Apple, il y a du hardware suffisant maintenant. Le problème c’est le soft et les Apis. Niveau graphique Metal c’est une isolation totale, Apple ne fait pas le poids en part de marché face à Vulkan/OpenGL ou même DirectX. C’est le même problème pour le calcul, ou le Machine Learning où il n’y a plus d’OpenCL à mettre en face de Cuda. Personne ou presque ne veut optimiser son soft pour 5-7% de part de marché quand il faut faire des développements complets et chers car spécifique.

CONNEXION UTILISATEUR