Mostrando entradas con la etiqueta Unity. Mostrar todas las entradas
Mostrando entradas con la etiqueta Unity. Mostrar todas las entradas

domingo, 19 de febrero de 2017

[Unity] Segundo ejemplo

Durante esta semana desarrollé mi segundo ejemplo usando Cardboard. Tenía los siguientes objetivos en mente:
  • Incluir un personaje animado para ver cómo se siente.
  • Incluir la mira que viene en el paquete de Google VR.
  • Interactuar con un objeto del mundo utilizando la mira y el botón del Cardboard. 
El ejemplo consiste en un bosque nocturno (de nuevo... ) donde, adicional a los árboles, también hay personajes animados. Uno puede ver alrededor al igual que en el primer ejemplo. El personaje más cercano es un objeto con el que se puede interactuar. Al tener la mira sobre él y oprimir el botón se prende una luz. Los personajes que están en el fondo también comienzan a iluminarse aleatoriamente.  Al oprimir de nuevo el botón mientras se está apuntado al personaje principal, todas las luces se apagan.


Pedazo del bosque.




El escenario lo hice igual que en el primer ejemplo: ubicando sprites alrededor de la cámara principal y rotándolos para que queden viendo hacía la cámara (esto lo hice con un script). 

Para incluir la mira y hacer objetos con los que se pueden interactuar se deben seguir los siguientes pasos:


  1.  Agregar el prefab GvrReticlePointer como hijo de la cámara principal.
  2.  Agregar un EventSystem a la escena.
  3.  Agregar los scripts GvrPointerInputModule y VRPointerManager al Event system.
  4.  Agregar GvrPointerPhysicsRaycaster a la cámara principal.
  5.  Agregar un EventTrigger al objeto con el que se quiere interactuar (el objeto debe tener un  Collider). El Event trigger debe disparar uno de los eventos dados por GvrPointerInputModule.


Luego de seguir estos pasos implementé la funcionalidad que buscaba. Al tener todo listo, conecté el celular al computador, le di clic a Build and Run y la aplicación quedó instalada. Puse el celular en el Cardboard y disfruté del escenario y la música ;)

 

(Credits in the Youtube's description)

sábado, 11 de febrero de 2017

[Unity] Primer ejemplo

Con el ambiente finalmente configurado, comencé a hacer mi primer proyecto con Cardboard. El objetivo de este ejemplo era probar la captura del movimiento y la rotación de la cabeza.

El ejemplo consiste en un bosque nocturno donde uno puede mirar alrededor. Bastante simple.




Pedazo del bosque.


El procedimiento inicial fue, en pocas palabras, el siguiente: construí un skybox para la escena, ubiqué la cámara principal, coloqué sprites de árboles alrededor de la cámara, configuré la iluminación y seleccioné la música de fondo.

Luego importé el paquete de Google VR para Unity. En este paquete se encuentran un montón de assets útiles y necesarios para utilizar Cardboard. También hay algunos ejemplos que revisaré luego.

Dentro del directorio "Prefabs" del paquete hay un prefab llamado "GvrViewerMain". Simplemente agregué el prefab a mi escena e hice clic en Play. En Unity se puede simular el movimiento de la cabeza haciendo clic en las teclas ALT y/o CTRL y moviendo el mouse.







 

Después de unos pequeños ajustes de la configuración de builds, el proyecto quedó listo para ser probado en un Cardboard. En el laboratorio conecté al computador un Samsung Galaxy s6 previamente configurado para funcionar con Cardboard y seleccioné la opción Build and Run en Unity. Tomó unos minutos, pero finalmente la aplicación quedó instalada en el celular. Abrí la aplicación, coloqué el equipo en el Cardboard y crucé los dedos para que todo saliera bien.

Afortunadamente, todo salió bien y la aplicación corrió sin inconvenientes :D






[Unity] Configuración del Ambiente

Después de ver varios ejemplos y leer parte de la documentación encontré que Unity 3D es una herramienta poderosa para crear aplicaciones de Cardboard. Para empezar a trabajar en Unity es necesario preparar el ambiente de desarrollo.

Instalar Unity

Unity cuenta con una versión personal gratis que se puede descargar desde su página web. Yo ya tenía instalado Unity, por lo que simplemente actualicé mi versión a la más reciente (Unity 5.5.1).

Obtener Google VR SDK para Unity

El SDK de Cardboard para Unity se encuentra en el siguiente link. Uno descarga el paquete y lo guarda en algún directorio del computador para posteriormente agregarlo a los proyectos de Unity que desee.

Configurar Ambiente de desarrollo Android

Para construir aplicaciones de Unity para Android se necesitan seguir ciertos pasos. Con iOS la metodología es similar, sin embargo, no tengo planeado trabajar con iOS por el momento. Primero se debe descargar e instalar el SDK de Android, que se puede obtener en este enlace. Luego se deben instalar los controladores necesarios para que el computador reconozca dispositivos Android conectados por USB. Una vez instalados los drivers, se debe activar el modo de desarrollador en el dispositivo y permitir la depuración por USB. Finalmente se debe conectar el SDK de Android con Unity, lo cual se puede hacer cuando uno intenta hacer un build a Android por primera vez desde Unity.