Activer l'API Geospatial pour votre application Unity (AR Foundation) ciblant iOS

Configurez les paramètres de votre application afin qu'elle puisse utiliser l'API Geospatial.

Prérequis

Assurez-vous de bien maîtriser les concepts fondamentaux de la RA. et comment configurer une session ARCore avant de continuer.

Consultez le Présentation de l'API Geospatial pour plus d'informations sur l'API Geospatial.

Si vous débutez avec ARCore, consultez la page Premiers pas. pour obtenir des informations sur les exigences logicielles et matérielles, les prérequis et d'autres informations spécifiques aux plates-formes que vous utilisez.

Pour que vous puissiez utiliser l'API ARCore Geospatial, votre projet doit être compatible avec Éléments de base de la RA et les extensions ARCore pour AR Foundation.

Activer l'API ARCore

Avant d'utiliser le système de positionnement visuel (VPS) dans votre application, vous devez d'abord activer l'API ARCore ; dans un projet Google Cloud nouveau ou existant. Ce service est chargé de pour héberger, stocker et résoudre des ancres géospatiales.

L'autorisation sans clé est préférable, mais l'autorisation par clé API est également acceptée.

Ajouter les bibliothèques requises à votre application

Après avoir autorisé votre application à appeler l'API ARCore, vous devez ajouter des bibliothèques à activer les fonctionnalités géospatiales dans votre application.

  1. Accédez à Modifier > Paramètres du projet > Gestion des plug-ins XR > Extensions ARCore. Assurez-vous que l'option iOS Support Enabled (Compatibilité iOS activée) est sélectionnée.
  2. Sous Optional Features (Fonctionnalités facultatives), sélectionnez Geospatial (Géospatial).

Activer les fonctionnalités géospatiales dans la configuration de la session

Une fois les fonctionnalités géospatiales activées dans votre application, activez-les dans la configuration de la session de RA afin qu'elles puissent communiquer avec l'API ARCore:

  1. Assurez-vous que le dossier Assets du projet contient un objet scriptable ARCoreExtensionsConfig. Pour en créer un, effectuez un clic droit dans le volet Assets (Composants) et sélectionnez Créer > XR > Configuration des extensions ARCore
  2. Sélectionnez l'objet scriptable ARCoreExtensionsConfig dans votre dossier Assets, puis définissez le Mode géospatial sur Activé.

  3. Configurez l'objet de jeu ARCore Extensions pour qu'il utilise la configuration ARCoreExtensionsConfig. Dans le volet Hierarchy (Hiérarchie), localisez l'objet de jeu ARCore Extensions que vous avez créé lors de la configuration initiale des extensions ARCore, puis connectez le champ ARCore Extensions Config à l'objet scriptable ARCoreExtensionsConfig dans votre dossier Assets.

Demander à l'utilisateur d'autoriser l'utilisation des données de l'appareil

Les applications qui utilisent l'API ARCore Geospatial doivent présenter à l'utilisateur une invite pour accepter et autoriser l'utilisation des données de son appareil. Voir Exigences de confidentialité des utilisateurs. des informations.

Vérifier la compatibilité de l'appareil

Tous les appareils compatibles avec ARCore ne sont pas également compatibles avec l'API Geospatial. Pour vérifier l'appareil de l'utilisateur pour des raisons de compatibilité, appelez AREarthManager.IsGeospatialModeSupported() Si la valeur FeatureSupported.Unsupported est renvoyée, n'essayez pas de configurer le session.

Demander à l'utilisateur l'autorisation d'accéder à la position au moment de l'exécution

Activer les services de localisation Unity dans un script qui déclenche l'environnement d'exécution demandes d'autorisation, procédez comme suit:

  1. Dans Project Settings > iOS > Other Settings > Location Usage Description, saisissez le nom de l'application qui demande des autorisations.

  2. Activer les services de localisation Unity pour déclencher l'environnement d'exécution demande d'autorisation, comme suit:

    public void OnEnable()
    {
        Input.location.Start();
    }
    
    public void OnDisable()
    {
        Input.location.Stop();
    }
    

    Découvrir Unity LocationService pour en savoir plus.

Vérifier la disponibilité de l'API Geospatial à la position actuelle de l'appareil

Étant donné que l'API Geospatial utilise une combinaison de VPS et de GPS pour déterminer une position géospatiale, vous pouvez l'utiliser tant que l'appareil est en mesure de déterminer sa position. Dans les zones où la précision du GPS est faible, comme les espaces intérieurs et les environnements urbains denses, l'API s'appuie sur la couverture VPS pour générer des postures avec une grande précision. Dans des conditions normales, les VPS offrent une précision de position d'environ 5 mètres et une précision de rotation de 5 degrés. Utilisez AREarthManager.CheckVpsAvailability() pour déterminer si un emplacement donné dispose d'une couverture VPS.

L'API Geospatial peut également être utilisée dans les zones qui ne disposent pas de couverture VPS. En extérieur, le GPS peut suffire à générer une position avec une grande précision dans les environnements où il n'y a pas ou peu d'obstacles au-dessus de la tête.

Étape suivante