Aprende a usar imágenes aumentadas en tus propias apps.
Requisitos previos
Asegúrate de comprender los conceptos fundamentales de RA y cómo configurar una sesión de ARCore antes de continuar.
Cómo compilar y ejecutar la app de muestra
Crea un proyecto nuevo en Unity según la guía de inicio rápido.
Cuando compiles la app, asegúrate de incluir la escena de imágenes aumentadas ubicada en Assets/GoogleARCore/Examples/AugmentedImage/Scenes/
.
Asegúrate de que tu dispositivo esté conectado a la máquina y, luego, haz clic en Build and Run. Unity compila tu proyecto en un APK de Android, lo instala en el dispositivo y lo inicia.
A medida que mueves el dispositivo, la app detecta y realiza un seguimiento automático de las imágenes del conjunto de imágenes de referencia que se encuentran en Assets/GoogleARCore/Examples/AugmentedImage/Images/
.
Crear archivo de base de datos
En la ventana Project, selecciona el conjunto de imágenes de referencia que desees (PNG o JPG), luego haz clic con el botón derecho y selecciona Create > Google ARCore > AugmentedImageDatabase.
Se crea una base de datos de imágenes nueva en la misma carpeta que las imágenes de referencia.
La ventana Inspector muestra las imágenes en la base de datos y el nivel de calidad de la imagen. Es posible que el sistema tenga dificultades para detectar imágenes con niveles de calidad inferiores a 75.
De manera opcional, puede especificar el ancho físico (en metros) para cada imagen. Si lo haces, ARCore puede estimar la pose de la imagen física en el tiempo de ejecución apenas ARCore detecte la imagen física, sin necesidad de que el usuario mueva el dispositivo para ver la imagen física desde diferentes puntos de vista.
Usa el archivo de la base de datos
En la ventana Project, ve a
Assets/GoogleARCore/Examples/AugmentedImage/Configurations
y abreAugmentedImagesSessionConfig
.En el Inspector, haz clic en la casilla junto a Augmented Image Database y selecciona el archivo de base de datos que creaste.
Obtén la AugmentedImage
Consulta AugmentedImageExampleController.cs
, ubicado en Assets/GoogleARCore/Examples/AugmentedImage/Scripts
, para ver un ejemplo sobre cómo hacer que se pueda hacer un seguimiento:
Session.GetTrackables<AugmentedImage>(myList, TrackableQueryFilter.Updated);
Compatibilidad con diferentes casos de uso
Cuando ARCore detecta una imagen aumentada, crea una Trackable
para esa imagen aumentada y establece TrackingState
en Tracking
y AugmentedImageTrackingMethod
en FullTracking
. Cuando la imagen con seguimiento se quita de la vista de la cámara, ARCore cambia AugmentedImageTrackingMethod
a LastKnownPose
y continúa proporcionando la orientación y la posición de la imagen.
Tu app debe usar estos enumeradores de manera diferente según el caso práctico previsto.
Imágenes fijas. La mayoría de los casos prácticos que involucran imágenes fijas en su lugar (es decir, que no se debería mover) pueden usar
TrackingState
para determinar si la imagen se detectó y si se conoce su ubicación.AugmentedImageTrackingMethod
.Imágenes en movimiento. Si tu app necesita realizar un seguimiento de una imagen en movimiento, usa
TrackingState
yAugmentedImageTrackingMethod
para determinar si se detectó la imagen y si se conoce su posición.
Caso de uso | Imagen fija | Moviendo imagen |
---|---|---|
Ejemplo | Póster colgado en la pared | Un anuncio al costado de un autobús |
La pose se puede considerar válida cuando |
TrackingState == Tracking |
TrackingState == Tracking
y AugmentedImageTrackingMethod == FullTracking
|