Table of Contents

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

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.

alt text

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.

alt text

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).

alt text

À 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.

alt text

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.

alt text

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:

alt text

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).

alt text

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.

alt text

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,

alt text

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.

alt text alt text

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

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: