On a enfin des nouvelles du staff d'Epic sur le support de Nanite sur Mac. En effet un checkin vient d'être ajouté aux branches 5.2 et ue5-main sur github qui ajoute une capacité très expérimentale et (pour l'instant) non supportée, désactivée par défaut pour Nanite sur les Macs basés sur M2.
Voici un lien vers le commit 5.2. (Si vous n'avez pas accès à github, vous obtiendrez une erreur 404.) Attention il y a de nombreuses mises en garde à ce sujet.
https://github.com/EpicGames/UnrealEngine/commit/e472142dfd41dd9ca3de0c5f786fc1464ff6aff1
La seule façon de l'activer est de modifier le code et de construire le moteur à partir des sources. Les modifications sont les suivantes :
Définir PLATFORM_MAC_ENABLE_EXPERIMENTAL_NANITE_SUPPORT=1 dans UEBuildMac.cs source.
Activer UE_EXPERIMENTAL_MAC_NANITE_SUPPORT dans spirv_msl.hpp
Reconstruire ShaderConductor selon les instructions de UEBuildMac.cs où se trouve la définition Nanite.
Et juste pour que ce soit bien clair : ça ne fonctionnera que sur du matériel M2.
Il n'y a aucune garantie de performance ou même de fonctionnement. Il s'agit simplement d'une étape fondamentale pour le développement futur. Cela dit, vous êtes invités à l'essayer et à nous faire part de vos commentaires.
Support expérimentale de Nanite sur Mac avec UE 5.2
En fait le GPU des puces M1 ne supporte pas les atomics en 64 bits, qui sont essentiels aux fonctionnement de Nanite, les M2 l’ont mais c'est encore expérimental.
Pour aller plus loin sur le sujet :
https://github.com/philipturner/ue5-nanite-macos/blob/main/AtomicsWorkaround/README.md
https://github.com/philipturner/ue5-nanite-macos
Pour aller plus loin sur le sujet :
https://github.com/philipturner/ue5-nanite-macos/blob/main/AtomicsWorkaround/README.md
https://github.com/philipturner/ue5-nanite-macos