Configuration scene et utilisation d'AR Foundation dans les projets EasyAR
L'utilisation d'AR Foundation dans Unity nécessite souvent EasyAR pour résoudre les limitations d'appareils d'AR Foundation. Le contenu suivant explique comment configurer et utiliser correctement AR Foundation dans une scene EasyAR, et comment activer dynamiquement AR Foundation selon la prise en charge de l'appareil.
Avant de commencer
- Lisez prise en charge du framework Unity XR par EasyAR pour comprendre la prise en charge de Unity XR par EasyAR et quand envisager AR Foundation.
- Lisez activer AR Foundation dans un projet EasyAR pour comprendre comment installer et configurer AR Foundation dans un projet EasyAR.
Ajouter des composants AR Foundation
Ajoutez AR Session et XR Origin d'AR Foundation dans la scene EasyAR.
Ajouter AR Session
Dans la vue Hierarchy, faites un clic droit sur une zone vide, puis utilisez le menu XR > AR Session pour ajouter ARSession de Unity à la scene.

Note
Cette AR Session est différente de l'AR Session d'EasyAR; elles doivent coexister dans la scene.
Ajouter XR Origin
Dans la vue Hierarchy, faites un clic droit sur une zone vide, puis utilisez le menu XR > XR Origin (Mobile AR) pour ajouter XROrigin de Unity à la scene.

Note
Ce XR Origin recouvre fonctionnellement le XR Origin d'EasyAR; il faut donc utiliser Unity XR Origin plutôt que le XR Origin d'EasyAR.
Si un XR Origin d'EasyAR existait déjà dans la scene, généralement nommé XR Origin (EasyAR), déplacez ses objets enfants sous le nouveau XR Origin créé, puis supprimez XR Origin (EasyAR).

À ce moment, si le nouveau XR Origin ne contient pas de XR Origin Child, ajoutez-le manuellement.
Dans la vue Hierarchy, sélectionnez XR Origin et faites un clic droit. Utilisez le menu EasyAR Sense > Origin > Origin : XR Origin Child pour ajouter XR Origin Child sous XR Origin.

Configurer Camera
Si une Camera AR existait déjà dans la scene, vous verrez une main camera supplémentaire dans la scene; il faut supprimer la camera d'origine.

Ensuite, sélectionnez Main Camera sous XR Origin et configurez la camera selon les instructions de configuration Camera.
Enfin, une structure complète de scene EasyAR avec AR Foundation ajouté devrait ressembler à ceci:
Attention
Si vous devez modifier la configuration d'AR Foundation via ARCameraManager.currentConfiguration, notez que certains téléphones eux-mêmes (par exemple Mi 10) présentent des problèmes: après modification de la configuration, aucune image ne peut être obtenue et EasyAR ne peut pas être utilisé (l'application a un arrière-plan image, mais les fonctions EasyAR ne réagissent pas). Il n'est donc généralement pas recommandé de la modifier; si cela est nécessaire, préparez une solution de repli lorsque EasyAR ne peut pas être utilisé.
Compatibilité des appareils et activation dynamique d'AR Foundation
EasyAR est compatible avec beaucoup plus d'appareils qu'AR Foundation. Il faut donc configurer l'application pour activer AR Foundation uniquement lorsque c'est nécessaire, et désactiver complètement AR Foundation dans les autres cas.
Vérifier les composants frame source
En général, une session créée via le menu EasyAR ajoute automatiquement ARCoreARFoundationFrameSource et ARKitARFoundationFrameSource (à l'exception de certaines fonctions comme image tracking qui ne nécessitent pas SLAM).

Important
ARCoreARFoundationFrameSource et ARKitARFoundationFrameSource sont des frame sources fournies par EasyAR pour activer les fonctions AR Foundation sur les appareils prenant en charge AR Foundation. Si la session dans la scene ne contient pas ces frame sources, les fonctions AR Foundation ne peuvent pas être activées.
Si la session dans la scene ne contient pas ces frame sources, vous pouvez les ajouter manuellement via le menu.

Pour fonctionner sur les téléphones qui ne prennent pas en charge AR Foundation, il faut aussi s'assurer que la session contient des frame sources autres qu'AR Foundation. Une ARSession typique devrait ressembler à ceci,

Astuce
Vous pouvez trier les frame sources selon les besoins. Au runtime de l'application, la session sélectionne la première frame source disponible selon l'ordre transform et la prise en charge de l'appareil.
Activer AR Foundation uniquement lorsque nécessaire
Comme l'implémentation sous-jacente d'AR Foundation sur téléphone est ARCore et ARKit, il ne peut être utilisé que sur un nombre limité d'appareils, surtout pas sur de nombreux téléphones Android chinois domestiques. Il est donc généralement recommandé d'activer AR Foundation et les scripts de fonctions associés uniquement sur les appareils pris en charge.
EasyAR peut effectuer automatiquement ces opérations. Cette fonction peut être activée ou désactivée via l'option Unity XR > Unity XR Auto Switch dans Project Settings > EasyAR > Sense. Pour plus de détails, consultez basculer automatiquement les objets Unity XR.
Scenes conservant la compatibilité AR Foundation
Une scene à laquelle les composants AR Foundation ont été correctement ajoutés peut fonctionner normalement que le package AR Foundation soit installé ou non.
Lorsque AR Foundation n'est pas installé, les fonctions AR Foundation et les frame sources correspondantes ne sont pas disponibles, et certains scripts dans la scene seront manquants; c'est une situation normale.

Astuce
De nombreux sample peuvent fonctionner normalement que le package AR Foundation soit installé ou non. Si vous devez activer la prise en charge d'AR Foundation dans ces sample, il suffit d'activer AR Foundation dans le projet EasyAR.
Étapes suivantes
- Découvrez comment basculer automatiquement AR Foundation selon la prise en charge de l'appareil
Sujets connexes
- Composants AR liés mentionnés dans l'article:
- AR Foundation fournit la capacité de motion tracking sur certains appareils. Pour la relation entre motion tracking et les différentes fonctions EasyAR, consultez:
- Pour plus d'informations sur la configuration scene d'AR Foundation, lisez la documentation officielle AR Foundation, en veillant à sélectionner la version de documentation correspondante avant lecture: