Realidad Aumentada con Unity y Vuforia
La realidad aumentada, es el sistema que nos permite llevar la ficción generada por un ordenador, usando gafas, lentes especiales, o como en nuestro caso, la cámara del teléfono, viendo así gráficos 3D proyectados al más puro estilo holográfico sobre los objetos rales de nuestro entorno. En este post aprenderemos a crear una aplicación de Realidad Aumentada (RA) para móvil con Unity y Vuforia.
Al instalar Unity, tenemos que realizar un paso crucial para poder exportar como apk. Dentro de Unity Hub debemos seleccionar en nuestra versión de Unity, Installs/Add Modules/Android Build Support.
Con Unity configurado, ya podemos crear nuestro proyecto. Necesitaremos cambiar la plataforma de exportación, ya que por defecto nos aparece para PC. Para hacer esto iremos a File/Build Settings/Android/Switch Platform.
Una vez instalado Unity necesitamos añadir el paquete de Vuforia. Vuforia es un kit de desarrollo de software (SDK) de realidad aumentada para dispositivos móviles que permite la creación de aplicaciones de realidad aumentada.
Utiliza tecnología para reconocer y rastrear imágenes planas y objetos 3D en tiempo real. Esta capacidad de registro de imágenes nos permite colocar y orientar objetos virtuales, como modelos 3D y otros medios, en relación con los objetos del mundo real, cuando se ven a través de la cámara de un dispositivo móvil. Para implementar el paquete tenemos dos opciones:
- Instalarlo a partir del package managment (Window/PackageManager/)
- Descargarlo en la página principal de Vuforia (recomendada, ya que contiene la versión más actualizada)
Una vez descargado el paquete solo debemos darle doble clic con el proyecto de Unity abierto, para importar todo el contenido. Con Vuforia ya presente en nuestro proyecto, podemos generar los elementos del paquete, en este caso queremos añadir una ARCamera que sustituiremos con la que ya teníamos por defecto.
Si seleccionamos esta nueva cámara veremos un componente distinto que no contiene nuestra cámara predeterminada, Open Vuforia Configuration.
Al abrir esta configuración nos va a pedir 2 cosas:
- Nuestra Licencia de Vuforia
- Y la base de datos que queremos importar
Para obtener nuestra licencia, debemos crearnos un usuario en la página web de Vuforia, y nos dirigiremos a Develop, donde aparecerán dos apartados: License Manager y Target Manager, justo lo que necesitamos. Vamos a crear primero nuestra licencia, dándole clic a Get Development Key. Una vez ya creada, esta licencia será la que debemos copiar directamente a nuestra ARCamera.
Ahora pasaríamos al apartado de Target Manager, donde añadiremos nuestra tarjeta reconocible para nuestra cámara. Pulsamos en Add Database, le pondremos un nombre y en nuestro caso marcaremos Type: Device. Con esto le decimos que el target estará alojado en nuestro dispositivo, Cloud consulta la imagen por internet y VuMark, marcas registradas.
Ya tenemos nuestra base de datos creada, así que debemos añadir nuestra tarjeta, pulsando en Add Target, nos saldrán varios tipos, en nuestro caso usaremos Single-Image, pero también se pueden usar objetos 3D reales. Debemos tener cuidado con el ancho, ya que Vuforia usa los metros como unidad por defecto.
Una vez añadida nuestra imagen, podemos asegurarnos de que nuestra tarjeta será fácilmente reconocible por nuestra cámara. Vuforia usa un sistema de detección de vértices para identificar la imagen, estos los podemos visualizar al pulsar dentro de Tarjeta/Show Features, y nos representará también la facilidad de reconocimiento, mediante estrellas.
A continuación, debemos descargar esta base de datos en Download Database, y escogeremos la opción de Unity Editor.
Volvemos a Unity e importamos la Base de datos haciendo doble clic como hicimos anteriormente con el paquete de Vuforia. En este punto nuestro proyecto ya tiene todo lo que necesitamos para funcionar, la base de datos y la licencia.
Vamos a generar una Image Target que va a ser la tarjeta que tenemos en nuestra base de datos.
Seleccionaremos que nos importe la tarjeta de nuestra base de datos, y la marcaremos más abajo:
AHORA… SOLO QUEDA HACER TODO EL PROYECTO, para implementar los assets (objetos), los debemos colocar como hijos de la tarjeta, de esta forma al apuntar con la cámara aparecerán activando el renderizado, y cuando dejemos de apuntar desaparecerán.
Dentro de las opciones de la ARCamera, veremos un apartado Track device pose, por defecto está activado, esto hará que nuestra cámara sea más flexible al detectar nuestra tarjeta. Si lo desactivamos, solo aparecerán los objetos si la cámara tiene una clara detección de la imagen, y en muchos casos es recomendable para el funcionamiento fluido de la apk.
Con estos sencillos pasos ya habremos creado nuestra primera apk con Realidad Aumentada, para exportarla, simplemente iremos a File/Build Settings/Build.
¡Espero que os haya sido de utilidad!
OSKAR CALLE REINOSO
PORQUE NO ME APARECE EL COMPLEMENTO VUFORIA EN NINGUNO DE LOS 2 METODOS PARA INSTALARLO
David Roca
Buenas Oskar,
primero de todo asegúrate de que se te ha instalado correctamente el paquete de Vuforia y has importado todos los archivos.
a continuación, comprueba si puedes crear una cámara AR para empezar a generar tu proyecto
si te sigue sin aparecer, manda otro mensaje,
Un saludo,
David Roca
Juan Luis
Artículo muy completo. Gracias por la explicación
David Roca
Espero que te haya ayudado
Un saludo
Soraya
Muy interesante. Una explicación muy clara y fácil de entender.
David Roca
Gracias por tu comentario Soraya,
me alegro de que te haya resultado interesante.