Instructor culinario mediante realidad aumentada en dispositivos Android

Para estimular a las personas a aprender a cocinar, se está trabajando en el diseño de una aplicación para dispositivos móviles Android, que le permita a los usuarios visualizar en su teléfono, el proceso de elaboración de una receta de cocina en un entorno de realidad aumentada. 

Sistema operativo Android

El sistema operativo Android ha tenido gran acogida por los usuarios y desarrolladores en el mundo. Tanto así que desde 2017 sobrepasó a Windows, siendo el sistema operativo más utilizado (Statcounter Global Stats, 2017).

Esto se debe a que es un sistema operativo de código libre, ya que su núcleo está basado en Linux y es desarrollado por Google. Además, es compatible con los software’s de desarrollo que se utilizarán para la creación de la aplicación.

Para el caso del proyecto, se implementará como requisito mínimo la utilización de dispositivos Android que posean un sistema operativo 6.0 (Marshmellow) o superior.

Unity

Unity es el motor gráfico de simulación que se utilizará para el desarrollo de la aplicación de realidad aumentada en 3D, este tiene compatibilidad para ser por el sistema operativo Windows 7 en adelante. Además es apto para procesadores de 32 o 64 bits, siendo compatible y permitiendo generar el paquete de salida que incluye un APK y un archivo de expansión APK (para exportar a Android).

Es conocida como la plataforma de desarrollo más popular del mundo para crear juegos y experiencias interactivas en 2D ó 3D. Es ampliamente utilizado debido a que posee un fácil manejo y  una gran cantidad de Assets, que son los elementos que componen el ambiente, como lo son animaciones, modelos, sonidos, etc. Además de ofrecer una store, donde se pueden encontrar y descargar desde funcionalidades concretas, hasta proyectos completos.

Adicional a esto, ofrece un catálogo de servicios muy útiles para ayudar a complementar cada vez más el proyecto. Los más relevantes son:

Analytics: que nos permite obtener información de la conducta de los jugadores.

Cloud Build: que permite compilar en la nube.

Performance Reporting: para la gestión de excepciones.

Everyplay: que permite grabar y compartir vídeos por parte de los jugadores.

Ads: que permite insertar publicidad.

La página principal de Unity, permite realizar la descarga del software de acuerdo con diferentes tipos de suscripción, y para el desarrollo del proyecto se utilizara la versión Personal, ya que es gratuita.

La descarga que realiza es la versión 2018 4f1 y es compatible con Vuforia. Se permite el uso de la suscripción Unity Personal, siempre y cuando se use para la creación de prototipos y aplicaciones en donde la empresa reciba fondos o ingresos menores a $100K.

Microsoft Visual Studio

Microsoft Visual Studio es un entorno de desarrollo integrado para Windows, Linux y macOS, y es compatible con varios lenguajes de programación como lo son C++, C#, Visual Basic, Java, Python entre otros. Para el caso del proyecto, se va a manejar a través de Windows utilizando el lenguaje C#, que es compatible con Unity.

Visual Studio permite crear los llamados Scripts, que son aquellos parámetros que programan el comportamiento de los GameObjets, que son los objetos o modelos virtuales existentes. Aunque los componentes propios de Unity son útiles en gran variedad de situaciones, en algunos casos estos pueden quedarse cortos, por lo que conviene tener una herramienta que permita programar a necesidad la interacción que poseen los objetos con el mundo virtual.

Se utilizará Microsoft Visual Studio en su versión 16.5.1. debido a que se ofrece como una herramienta totalmente gratuita por lo que no presentará sobre el aspecto económico no presentará afectaciones, además de que posee grandes bases de datos de documentación que facilitarán el uso de esta herramienta. 

En el menú de edición, Unity ofrece la posibilidad de cambiar el editor externo de scripts, como aplicativo predeterminado, y una de las opciones que maneja es Visual Studio. Esto permite que se pueda abrir, editar y guardar el archivo desde Visual Studio, y al ejecutar Unity, este va a recibir los cambios automáticamente.

Vuforia

Vuforia es un SDK (kit de desarrollo de software) desarrollado por Qualcomm y utilizado para el desarrollo de aplicaciones de realidad aumentada, virtual o mixta. Después de la alianza de Unity con Qualcomm, se realizaron actualizaciones para que ambos software tuvieran compatibilidad.

Es utilizado para hacer el reconocimiento de los entornos de la vida real a través de la cámara de un dispositivo, esta herramienta utiliza algo llamado Tracker que es el que identifica los Targets en el entorno, los analiza, verifica que se encuentren dentro de la base de datos integrada, y habilita la renderización de los objetos virtuales en el entorno.

Se encuentra disponible como plataforma de desarrollo dentro de los sistemas operativos Windows, Linux y Mac, y soporta como plataformas móviles a Android y iOS, por lo que no presenta ningún problema de accesibilidad.

Vuforia-Unity

Para realizar la integración de Vuforia con Unity, es necesario crear una una clave única de licencia, que sirve para poder usar la aplicación en el dispositivo y la configuración de Unity la solicita.

Posteriormente, Vuforia permite la creación de una base de datos en las que se pueden cargar y almacenar los Targets que se van a utilizar durante el reconocimiento del espacio. Estos Targets se van a trabajar como imágenes prediseñadas en un editor de imágenes como Paint (está integrado en Windows), y estas deben ser cargadas a la base de datos en formato JPG.

Cuando se encuentren instalados Unity y Vuforia, y se encuentren generadas tanto la licencia como la base de datos, estos se importan a Unity junto con algunas otras funcionalidades y Assets a través del ejecutable generado.

Cuando la aplicación se encuentre desarrollada, Unity genera un APK para realizar la instalación de la aplicación en un dispositivo Android.

Autores:

Edgar Andrés Romero Otálora

Jean Sebatian Salamanca Wilches

Miguel Angel Moreno Rodriguez

Editor.: Luz Adriana Muñoz.

Editor: Hisle Ángela Gutiérrez García

Código: UCP2-4

Fuentes

Vuforia-UnitySanchez E. (2019). Desarrollo de una Aplicación para Dispositivos Móviles Android con Realidad Aumentada, para el Aprendizaje del Movimiento Parabólico. Dspace. http://www.dspace.uce.edu.ec/bitstream/25000/20302/1/T-UCE-0011-ICF-205.pdf.

Unity Technologies. (2020). Unity para todos. Unity. https://unity.com/es.

PTC,Inc.The Vuforia Engine Team (2020). Vuforia Engine 9.0 is Available! . The Vuforia Engine  https://developer.vuforia.com/.

Cruz, A. (2014). Realidad Aumentada con Vuforia. Desarrollo Libre. https://www.desarrollolibre.net/blog/android/realidad-aumentada-con-vuforia#.Xn6NRohKiUk.

República. (2018). Ver la comida con realidad aumentada antes de realizar el pedido [Fotografía]. República. https://gastronomiaycia.republica.com/2018/04/19/ver-la-comida-con-realidad-aumentada-antes-de-realizar-el-pedido/

Simpson, R. (2017). Android overtakes Windows for first time. statCounter Globalstats .https://gs.statcounter.com/press/android-overtakes-windows-for-first-time.

Rodriguez, M. (2016). ¿QUÉ ES UNITY3D Y POR QUÉ UTILIZARLO?, ANALIZAMOS SUS VENTAJAS. Bravent. https://www.bravent.net/que-es-unity3d-y-por-que-utilizarlo-analizamos-sus-ventajas.

Vuforia (2020). Getting Started with Vuforia Engine in Unity. Vuforia Developer Library. https://library.vuforia.com/articles/Training/getting-started-with-vuforia-in-unity.html.

Vuforia (2020). Supported Versions. Vuforia Developer Library. https://library.vuforia.com/platform-support/supported-versions.html.

Vuforia (2020). Recommended Devices. Vuforia Developer Library. https://library.vuforia.com/content/vuforia-library/en/platform-support/vuforia-engine-recommended-devices.html.

Unity Documentation (2019). Player settings for the Android platform. Unity Technologies. https://docs.unity3d.com/2018.3/Documentation/Manual/class-PlayerSettingsAndroid.html.

Unity Documentation (2019). Vuforia hardware and software requirements. Unity Technologies. https://docs.unity3d.com/2017.4/Documentation/Manual/vuforia_requirements.html?_ga=2.201868951.768828021.1585357342-752348460.1585357342.

Unity (2020). Codificación en C# en Unity para principiantes. Unity Technologies. https://unity3d.com/es/learning-c-sharp-in-unity-for-beginners.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *