Le développement de contenu VR à l'aide du SDK OpenXR sur un MacBook Pro M4 est techniquement possible mais est livré avec plusieurs limitations et considérations.
Prise en charge OpenXR sur macOS
OpenXR est une norme ouverte pour les applications de réalité virtuelle (VR) et de réalité augmentée (AR), permettant aux développeurs de créer du contenu multiplateforme. Cependant, la prise en charge d'OpenXR pour MacOS est principalement via Vulkan, en utilisant des outils comme MoltenVK, qui traduit les appels de l'API Vulkan vers le métal. Cela signifie que vous pouvez utiliser OpenXR sur macOS avec Vulkan, mais il n'y a pas d'extension directe pour l'API Metal d'Apple, comme `xr_khr_metal_enable` [1].
en utilisant MOLTENVK
Moltenvk vous permet d'exécuter des applications Vulkan sur macOS en traduisant des appels Vulkan vers le métal. Cela signifie que vous pouvez développer des applications OpenXR à l'aide de Vulkan et les exécuter sur votre MacBook Pro M4 via MoltenVK. Cependant, le partage de texture et de synchronisation transversale peut ne pas être entièrement pris en charge, ce qui pourrait limiter certaines fonctionnalités avancées [1].
Unity et OpenXR sur macOS
Unity prend en charge OpenXR, et vous pouvez l'utiliser pour développer du contenu VR sur macOS. Cependant, Unity utilise principalement du métal sur macOS, qui n'a pas de support OpenXR natif. Vous auriez besoin d'utiliser MOLTENVK pour permettre le support Vulkan dans Unity pour le développement OpenXR. Cette configuration est techniquement possible mais peut nécessiter une configuration supplémentaire et pourrait être moins simple que de se développer sur Windows ou Linux [1] [4].
Configuration de l'environnement de développement
Pour développer des applications OpenXR sur votre MacBook Pro M4, vous devrez:
1. Installez Xcode et CMake: ces outils sont nécessaires pour construire des composants OpenXR sur macOS [7].
2. Configurer MOLTENVK: Pour traduire les appels Vulkan vers le métal, assurant une compatibilité avec le GPU à base de métal de votre MacBook.
3. Utilisez l'unité ou un autre moteur: Si vous préférez un environnement de développement plus intégré, l'unité peut être utilisée avec le support OpenXR via MoltenVK.
Limites
- Support métallique: il n'y a pas d'extension OpenXR directe pour le métal, nécessitant l'utilisation de MoltenVK pour la compatibilité vulkan.
- Partage transversal: cela peut ne pas être entièrement pris en charge, ce qui limite certaines fonctionnalités VR avancées.
- Test et déploiement: le test des applications VR directement sur un casque à partir d'un MacBook peut être plus compliqué que sur un PC, nécessitant souvent un déploiement à un appareil pour les tests [9].
En résumé, bien qu'il soit possible de développer du contenu VR en utilisant OpenXR sur un MacBook Pro M4, vous devrez contourner le manque de support métallique natif et considérer les limites du développement multiplateforme sur MacOS.
Citations:[1] https://community.khronos.org/t/support-for-metal-graphics-bindings/110302
[2] https://support.apple.com/en-us/121553
[3] https://forum.freecad.org/viewtopic.php?t=39526
[4] https://communityforums.atmeta.com/t5/unity-development/does-meta-xr-simulator-support-mac-os/td-p/1092455/page/3
[5] https://support.apple.com/en-in/121552
[6] https://github.com/mikeroyal/apple-silicon-guide
[7] https://github.com/khronosgroup/openxr-sdk-source/blob/main/building.md
[8] https://www.apple.com/newsroom/2024/10/new-macbook-pro-features-m4-family-of-chips-and-apple-intelligence/
[9] https://www.reddit.com/r/oculus/comments/qw2zyz/new_m1_macbook_pro_for_oculus_development_using/