ARCore llega, la respuesta de Google contra ARKit de Apple. Ambas tecnologías son frameworks enfocados al desarrollo de aplicaciones de Realidad Aumentada.

arcore android

En este post voy a mostrar cómo empezar a desarrollar con ARCore. Para ello daré las pautas que debes seguir paso a paso para poner en marcha el proyecto de ejemplo que proporciona Google en su documentación oficial.

Al finalizar el post tendrás en tu dispositivo Android tu primera aplicación desarrollada con ARCore de realidad aumentada.

Antes de empezar, lo primero de todo es conocer la tecnología, ¿Que és Google ARCore?

Google ARCore

Google presentó ARCore junto con el video que se muestra a continuación, en él se puede observar una preview de ejemplos realizados con este framework.

Actualmente ARCore solo será compatible con dispositivos Samsung Galaxy S8  y Pixel, con Android 7.0 Nougat en adelante. Es de imaginar que la compañía irá agregando más modelos poco a poco.

ARCore es capaz de determinar la posición y orientación de la cámara, su distancia con el objeto 3D que se verá en pantalla, generar sombras y reflejos en función de la luz ambiente, etc. ARKit ya cuenta también con todas estas características.

Capacidades del SDK:

  • Seguimiento de movimiento: Utilizando la cámara del teléfono para observar los puntos característicos en la sala y los datos del sensor IMU, ARCore determina la posición y la orientación (postura) del teléfono a medida que se mueve. Los objetos virtuales permanecen colocados con precisión.
  • Comprensión ambiental: Es común que los objetos AR se coloquen en un piso o una mesa. ARCore puede detectar superficies horizontales utilizando los mismos puntos caracteristicos que utiliza para el seguimiento de movimiento.
  • Estimación de luz: ARCore observa la luz ambiente en el entorno y hace posible que los desarrolladores iluminen objetos virtuales de manera que se adapten a su entorno, haciendo su apariencia aún más realista.

Desarrollo con ARCore

Android Studio, Unity y Unreal son los entornos en los que se podrá comenzar a desarrollar aplicaciones de realidad aumentada mediante ARCore.

Elige y descarga el SDK

Como ya he mencionado, ARCore podrá usarse desde su fecha de lanzamiento en diferentes entornos. Desde la documentación oficial puedes seleccionar y descargar el SDK correspondiente a Android Studio, Unity o Unreal.

Una vez descargado el SDK correspondiente al entorno con el que vayas a programar, ya puedes dar tus primeros pasos.

Hello World en Android Studio

Abre proyecto de ejemplo HelloAR ubicado en:

<tu-carpeta-sdk>/samples/java_arcore_hello_ar“.

El proyecto de ejemplo requiere de dependencias o versiones concretas de software, si las dependencias no están instaladas, Android Studio te preguntará si le das permiso para descargarlas e instalarlas.

Prepara tu dispositivo

Para realizar las pruebas de tu aplicación necesitarás un dispositivo real, ya que ARCore no soporta emuladores de android, además el dispositivo real debe ser compatible con los soportados por ARCore. A continuación:

  • Activa las opciones de desarrollador
  • Activa la opción USB Debug
  • Descarga el servicio ARCore, e instalalo con el siguiente comando adb
adb install -r -d arcore-preview.apk
Ejecuta el ejemplo

Conecta tu dispositivo Android y haz click en el icono “Run” en Android Studio, selecciona tu dispositivo en la ventana emergente y pulsa “OK”.

Android Studio construirá el proyecto en una APK debug y lo instalará en tu dispositivo. Si todo ha ido bien, automáticamente se te abrirá la aplicación.

Mueve tu dispositivo y comprobarás como la app detecta automáticamente superficies planas y dibujará una rejilla de diamante. Toca cualquier parte de la rejilla y un robot de Android aparecerá en la superficie.

Siguiente paso. Tu turno!

El siguiente paso sería leer el código de esta app de ejemplo para aprender como funciona. Para saber más, aquí tienes la documentación oficial de ARCore para el SDK de Android Studio.

Después de esto puedes integrar la librería ARCore AAR en tu proyecto para agregar las dependencias y comenzar a crear tu propia App. Nota: tu app requiere minSDKVersion 19 o mayor.

Hello World en Unity

Para poder usar el SDK de ARCore necesitar tener instalada la versión de Unity 2017.2 Beta 9. Una vez en Unity, selecciona File > New Project, nombra tu proyecto como HelloAR, deja el modo 3D seleccionado y haz click en Create Proyect.

Importa el SDK

Importa el sdk descargado llamado arcore-unity-sdk-preview.unitypackage desde Assets> Import package > All e import everything in the Unity package. En la ventana de proyecto puedes ver tanto los archivos del SDK como del proyecto de ejemplo HelloAR.

Configura build settings

Abre la ventana Build Settings desde File > Build Settings

Cambia las siguientes configuraciones:

  1. Cambia la plataforma a Android y haz click en Switch Platform
  2. En Player Settings, cambia:
    1. Other Settings > Multithreaded Rendering: Off
    2. Other Settings > Package Name: a unique app ID that looks like a Java package name, such as com.example.helloAR
    3. Other Settings > Minimum API Level: Android 7.0 or higher
    4. Other Settings > Target API Level: Android 7.0 or 7.1
    5. XR Settings > Tango Supported: On
  3. En Scenes in Build se muestra la lista de escenas de tu proyecto que serán incluidas al generar la app. Agrega la escena desde el proyecto de ejemplo HelloAR:
    1. Localiza la escena en la ventana Project, Assets > GoogleARCore > HelloAR > Scenes.
    2. Haz click en la escena y arrastrala en Scenes in Build
Prepara tu dispostivo

Realizamos exactamente los mismos pasos descritos en el apartado anterior Hello World en Android Studio > Prepara tu dispositivo .

Genera y ejecuta el ejemplo

Asegurate de que tu dispositivo esta conectado, click en Build and Run. Unity generará una apk del proyecto y la instalará en el dispositivo conectado. Si todo ha ido bien se ejecutará la app automáticamente.

Puedes usar Android Logcat para ver los mensajes log o Android Device Monitor para analizar más datos del dispositivo.

Siguiente paso.

Ahora depende de ti seguir avanzando. Lee el código de esta app de ejemplo y revisa la documentación oficial del SDK de ARCore para Unity

Hello World en Unreal

Todavía no he tenido tiempo de probar a generar el proyecto de ejemplo desde el motor Unreal en dispositivos Android. Dejo este apartado pendiente para cuando pueda sacar un rato. No obstante dejo aquí el enlace a la documentación oficial de Google para ARCore: Getting Started in Unreal.

Conclusión

ARCore es lo que muchos desarrolladores estaban esperando para lanzarse al mundo de las aplicaciones de realidad aumentada. Aunque aún está en sus primeros pasos, seguramente vaya evolucionando bastante rápido, actualizándose con mejoras y soportando cada vez más dispositivos. Sabiendo que quien está detrás de todo esto es Google, ARCore puede promete mucho.

Si todo evoluciona bien, probablemente se avecine un “Bum” de aplicaciones de Realidad Aumentada en Google Play.

Espero que te haya sido de utilidad este post. Si tienes cualquier pregunta o sugerencia, no dudes en comentar!

 

Comparte el post