Establece la configuración de tu app para que pueda usar la API de Geospatial.
Requisitos previos
Asegúrate de comprender los conceptos fundamentales de RA y cómo configurar una sesión de ARCore antes de continuar.
Consulta la Introducción a la API de Geospatial para obtener más información información sobre la API de Geospatial.
Si es la primera vez que desarrollas con ARCore, consulta Primeros pasos. para obtener información sobre requisitos de software y hardware, requisitos más información específica de las plataformas que utilizas.
Para usar la API de ARCore Geospatial, tu proyecto debe ser compatible AR Foundation y ARCore Extensions for AR Foundation.
Habilita la API de ARCore
Antes de usar el sistema de posicionamiento visual (VPS) en tu aplicación, primero debes Habilita la API de ARCore. en un proyecto de Google Cloud nuevo o existente. Este servicio es responsable alojar, almacenar y resolver anclas geoespaciales.
Se prefiere la autorización sin clave, aunque también se admite la autorización de la clave de API.
Agrega las bibliotecas requeridas a tu app
Después de autorizar tu app para que llame a la API de ARCore, debes agregar bibliotecas a Habilita las funciones geoespaciales en tu app.
- Navega a Editar > Configuración del proyecto > Administración de complementos XR > Extensiones de ARCore Asegúrate de que la opción iOS Support Enabled esté seleccionada.
- En Componentes opcionales, selecciona Geoespacial.
Habilita las capacidades geoespaciales en la configuración de la sesión
Una vez que se habilite la funcionalidad geoespacial en tu app, habilita las capacidades geoespaciales en la configuración de la sesión de RA de la app para que pueda comunicarse con la API de ARCore:
- Asegúrate de que la carpeta Assets del proyecto contenga un objeto que admita secuencias de comandos ARCoreExtensionsConfig. Para crear uno, haz clic con el botón derecho en el panel Assets y selecciona Create > XR > Configuración de extensiones de ARCore
Selecciona el objeto que admite secuencias de comandos ARCoreExtensionsConfig en tu carpeta Assets y establece el Modo geoespacial en Habilitado.
Configura el objeto de juego ARCore Extensions para usar la configuración ARCoreExtensionsConfig. En el panel Hierarchy, busca el objeto de juego ARCore Extensions que creaste cuando configuraste las extensiones de ARCore inicialmente y conecta el campo ARCore Extensions Config al objeto con secuencias de comandos ARCoreExtensionsConfig en tu carpeta Assets.
Solicitar al usuario que permita el uso de datos del dispositivo
Las apps que usan la API de ARCore Geospatial deben presentar al usuario un mensaje para hacer lo siguiente: reconocen y permiten el uso de datos de su dispositivo. Consulta Requisitos de privacidad del usuario para obtener más información información.
Comprueba la compatibilidad de los dispositivos
No todos los dispositivos compatibles con ARCore también admiten la API de Geospatial. Para comprobar
el dispositivo del usuario para verificar la compatibilidad, llama
AREarthManager.IsGeospatialModeSupported()
Si se muestra FeatureSupported.Unsupported
, no intentes configurar
sesión.
Solicita permisos de ubicación al usuario durante el tiempo de ejecución
Habilitar los servicios de ubicación de Unity en una secuencia de comandos que active el tiempo de ejecución solicitudes de permisos, haz lo siguiente:
En Project Settings > iOS > Other Settings > Location Usage Description, ingresa el nombre de la app que solicita permisos.
Habilita los servicios de ubicación de Unity para activar el entorno de ejecución solicitud de permiso, de la siguiente manera:
public void OnEnable() { Input.location.Start(); } public void OnDisable() { Input.location.Stop(); }
Consulta
LocationService
documentación para obtener más información.
Comprueba la disponibilidad de datos geoespaciales en la ubicación actual del dispositivo
Como la API de Geospatial usa una combinación de VPS y GPS para determinar una pose geoespacial, la API se puede usar siempre y cuando el dispositivo pueda determinar su ubicación. En áreas con baja precisión de GPS, como espacios interiores y entornos urbanos densos, la API utilizará la cobertura del VPS para generar poses de alta precisión. En condiciones típicas, se espera que el VPS proporcione una precisión posicional de aproximadamente 5 metros y una precisión de rotación de 5 grados. Usa AREarthManager.CheckVpsAvailability()
para determinar si una ubicación determinada tiene cobertura de VPS.
La API de Geospatial también se puede usar en áreas que no tienen cobertura VPS. En ambientes al aire libre con pocas obstrucciones por encima o ninguna, el GPS puede ser suficiente para generar una postura con alta precisión.
¿Qué sigue?
- Obtén la pose geoespacial de la cámara del dispositivo para determinar la ubicación exacta del dispositivo del usuario en el mundo real.
- Verifica la disponibilidad de VPS en la ubicación específica de un dispositivo.