DesarrolloLibre

Desarrollo Web, Android y mucho más

¡Actualizado el 13-03-2017!

Para hablar de Wikitude primero debemos de entender algunos conceptos básicos como la realidad aumentada; la realidad aumentada no es más que una dotación al usuario para que pueda combinar elementos virtuales con su entorno físico para crear una realidad mixta interactiva, en otras palabras añade una capa virtual a los elementos reales:

wikitude developer

La realidad aumentada es la incorporación de datos en un entorno real por medio de otras técnicas utilizadas como la reconocimiento de imágenes.

Licenciamiento de Wikitude

Wikitude es una SDK gratuita para proyecto no comerciales (paga caso contrario) que permite la creación de aplicaciones de Realidad Aumentada con Android y/o IOS como principales tecnologías y también mediante una extensión en Cordova, Unity entre otras, las cuales puedes consultar en la documentación oficial de la tecnología.

Características de Wikitude

La SDK de Wikitude soportan otras tecnologías como geolocalización, reconocimiento de imágenes, reconocimiento en la nube, etc; puede ver el resto de las características en: Powerful Features.

Pero lo que hace verdaderamente especial a esta SDK es que permite que utilicemos tecnologías web (HTML, javaScript, CSS) para desarrollar nuestra aplicaciones de Realidad Aumentada y la SDK se actualizó en las últimas versiones para brindar un soporte Nativo para Android y/o IOS aunque su principal fuerte está en las tecnologías web como se mencionó anteriormente; lo que significa que no tenemos que manejar complejos eventos desde Android si no algo más intuitivo como lo son las tecnologías web del lado del cliente.

Términos fundamentales para poder trabajar y entender Wikitude

Siguiendo con la terminología básica de Wikitude, ya hablamos sobre la RA por las siglas de realidad aumentada, ahora hablaremos un poco sobre algunos términos los cuales son fundamentales para desarrollar en esta plataforma ya sea en Android o en IOS:

  • Target: No es más que un conjunto de datos extraídos de una imagen que es empleado por el tracker o rastreador al momento de reconocer una imagen y realizar alguna acción como mostrar capas de información, etc.
  • Target Collection: Como su nombre indica, es una colección de targets u objetivos que asocia los datos de un conjunto de targets que es empleado por el tracker para reconocer imágenes del mundo real detectadas por la cámara del dispositivo; la extensión de los Target Collection es de wtc y es un archivo que generamos desde el portal de Wikitude.
  • ClientTracker: Es el tracker o rastreador que analiza la cámara en vivo, y obtiene las imágenes 2D, analiza el Target Collection asociado al proyecto y busca coincidencias con la imagen que se obtiene a través de la cámara del dispositivo

JavaScript API para Android

Como mencionamos en un inicio existen dos formas con la cual podemos trabajar con Wikitude en Android, la primera es mediante tecnologías web lo cual consiste básicamente en llamar al architectView en nuestro proyecto y este el mismo le notificará sobre el ciclo de vida de todos los eventos que puedan ocurrir; el architectView crea una especie de lente mágico o una superficie en la cámara en donde se manejan los eventos; para incluir el architectView en nuestro proyecto debemos de agregar la siguiente etiqueta dentro de un FrameLayout en nuestro layout:

<com.wikitude.architect.ArchitectView android:id="@+id/architectView"
   android:layout_width="fill_parent" android:layout_height="fill_parent"/>

Luego debemos de crear páginas escritas en HTML ubicadas en la carpeta asset; que utilizan la API de ARchitect de ese directorio; dicho archivo debe de incluir:

<script src="architect://architect.js"></script>

Para poder utilizar dicha API.

Solo necesitamos hacer páginas en HTML que utilizan esta API de Realidad Aumentada (architect) que está hecha en JavaScript para hacer que nuestras aplicaciones funcionen; esta forma de crear aplicaciones con realidad aumentada se le conoce como (al menos así le llaman en la documentación oficial) ARchitect worlds; puedes consultar la documentación oficial en Android JavaScript API.

API nativa para Android

La otra forma que tenemos es empleando código nativo o código java sin necesidad de incorporar código web; esta API es algo pequeña pero bastante interesante dependiendo de lo que queramos hacer ya que todo el prosesamiento de imágenes reconocidas son resueltas en la misma Actividad o Fragment en donde tengamos especificado el reconocimiento de imágenes o traking y podemos realizar fácilemente múltiples acciones dentro de nuestra actividad; puedes consultar la documentación oficial en Android Native API

Dispositivos Soportados

Android 4.3 o superior con una alta densidad por pixeles (hdpi) y por supuesto; el equipo debe de tener una cámara trasera.


Publicidad

Give me for a beer!

Algunos recursos que te pueden interesar

Creando increibles Drawer en Android con MaterialDrawer

Creando increibles Drawer en Android con MaterialDrawer

Generador de launcher para Android sin padding

Generador de launcher para Android sin padding

Telegram messenger para Android

Telegram messenger para Android

Algunos artículos que te pueden interesar

Desarrollando aplicaciones de Realidad Aumentada con Wikitude (parte 2)

Desarrollando aplicaciones de Realidad Aumentada con Wikitude (parte 2)

En esta segunda entrega haremos una aplicación funcional utilizando la realidad aumentada y el reconocimiento de imágenes utilizando el API de Wikitude.

Andrés Cruz 23-10-2013

Construyendo nuestro propio logo Android con SVG en HTML

Construyendo nuestro propio logo Android con SVG en HTML

En esta entrada abordaremos un tema un poco más práctico y veremos cómo construir nuestro propio logo de Android empleando lo hablado hasta el momento.

Andrés Cruz 21-05-2015

Configurando un dispositivo Android para desarrollar

Configurando un dispositivo Android para desarrollar

Explicaremos como configurar un dispositivo Android para que al conectarlo en una computadora vía USB, el dispositivo Android pueda ser utilizado para "correr" o instalar nuestras aplicaciones en desarrollo.

Andrés Cruz 24-12-2013