Bienvenido a este codelab de nuestro curso sobre desarrollo de aplicaciones XR. En este tutorial, aprenderás a crear tu primer proyecto XR desde cero. Te guiaremos a través de los pasos necesarios para crear un proyecto XR, incluyendo las dependencias y módulos que debes añadir para poder probar tu aplicación en un simulador XR.

Después de haber instalado el Editor de Unity y asegurarnos de que todas las configuraciones necesarias estén en su lugar, es el momento de crear un nuevo proyecto. Cada proyecto en Unity es único y puede tener ajustes específicos que lo diferencian de otros. Esto significa que podemos trabajar en proyectos que abarquen diferentes áreas, como 2D, 3D, Realidad Virtual, Realidad Aumentada, entre otros. Para empezar, vamos a abrir Unity Hub.

Dirígete a la pestaña Projects y seleccione el botón azul con la etiqueta New Project.

Dentro de la pestaña All templates, selecciona la opción 3D Core. A la derecha de tu ventana podrás ver una descripción del proyecto a crear, así como sus configuraciones iniciales.

Nota: Asegúrate que en la parte superior de la ventana salga Editor Version: 2021.3.16f1, de encontrarse otra versión, despliega la lista y seleccionala.

En la casilla Project name puedes cambiar el nombre de tu proyecto, es recomendable elegir un nombre creativo que haga alusión a este. En particular, nuestro proyecto del curso, tendrá como temática la creación de un huerto en realidad virtual, así que podemos llamarlo "MiHuertoVR"

En la casilla Location seleccione la ruta donde desea alojar su proyecto. En caso de tener una máquina virtual asignada para el curso, debe ubicar y seleccionar su carpeta personal. Con respecto a las configuraciones de Unity Cloud, estas son opcionales y no son necesarias para el curso, por lo que las puede dejar en blanco. Estas son herramientas que permiten tener un mayor control de los proyectos a través de la nube de Unity y sistemas de control de versiones.

El proyecto se abrirá automáticamente. Es posible que reciba una notificación de Unity indicando que hay una versión más reciente de su editor. En este caso, le recomendamos seleccionar la opción Skip new version para mantener la coherencia y uniformidad en el entorno de desarrollo del curso.

La elección de utilizar la versión 2021.3.16 del editor de Unity tiene como objetivo principal garantizar la consistencia entre todos los participantes, minimizando posibles discrepancias que puedan surgir debido a diferencias en las versiones del software y, por ende, facilitar un proceso de aprendizaje sin contratiempos ni incompatibilidades.

Una vez finalizada la carga del proyecto podrás ver la siguiente ventana.

Inicialmente, debes verificar que Visual Studio esté debidamente instalado y vinculado a Unity. para ello, si estás en Windows, vas a Edit > Preferences > External Tools, en Mac Unity > Settings > External Tools. Allí, en External Script Editor, seccionales Visual Studio.

Para quienes estén trabajando en Mac, realizaremos la configuración del proyecto cambiando de plataforma a Android.

Esto lo puedes hacer en Edit > Build Settings > Android > Switch Platform

Ahora que dispones de un proyecto 3D básico, es el momento de adaptarlo para desarrollar en Realidad Virtual para Meta Quest 1 y 2, utilizando OpenXR. Este estándar abierto y libre de regalías proporciona un acceso de alto rendimiento a las plataformas y dispositivos de Realidad Aumentada y Realidad Virtual.

En la parte superior izquierda de la ventana del editor, selecciona la pestaña Edit > Project Settings.

En la ventana emergente, selecciona XR Plugin Management. Luego, haz click en Install XR Plugin Management.

Ahora, selecciona OpenXR para instalar los paquetes necesarios. Al finalizar la instalación aparecerá una advertencia indicando que se debe reiniciar el editor para garantizar la compatibilidad entre este y los nuevos paquetes. Debes aceptar estos cambios dando click en Yes.

Después de que el editor de Unity haya recibido los cambios correctamente, podrás ver que hay un símbolo de advertencia al lado de OpenXR. Haz click encima de este y toma un momento para leer los mensajes. En la imagen a continuación podrá ver dos tipos de mensajes. Uno de ellos tiene un botón Edit a la derecha y el otro tiene un botón Fix. Generalmente, los mensajes que cuentan con el botón Fix son configuraciones que se pueden reparar con un simple click, por lo tanto, selecciona este botón para solucionar el problema. Por otro lado, el mensaje con el botón Edit indica que una o varias acciones deben ser realizadas, en este caso, añadir un perfil de interacción. Solucionaremos esta advertencia en el siguiente paso.

Para solucionar la advertencia anterior, debes dirígete a la pestaña OpenXR en la parte inferior izquierda de la ventana. Asegurate de estar en las configuraciones para Windows, Linux y Mac, es decir, tener seleccionada la pestaña con el icono de un monitor 🖥️. Notarás una lista vacía debajo de Interaction Profiles. Haciendo click en el símbolo (+), selecciona Oculus Touch Controller Profile.

Ahora, selecciona la pestaña de Android en la parte superior derecha de la ventana OpenXR. Repite el paso anterior para añadir Oculus Touch Controller Profile.

Además, selecciona la opción Oculus Quest Support dentro de OpenXR Feature groups. Finalmente, haciendo click en el icono de engranaje ⚙️ a la derecha de Oculus Quest Support, asegurate de tener seleccionadas las plataformas en las que va a desarrollar. Por motivos de este curso puede tener seleccionado Quest y Quest 2.

Nota: Se selecciona Oculus Touch Controller Profile porque el plugin de OpenXR es multiplataforma, además, permite varios perfiles de interacción según dispositivos, en nuestro caso usamos el de oculus porque usamos dispositivos Meta. Adicionalmente, esta opción permite que los controles del simulador tenga los botones del control de oculus.

Ahora que haz configurado OpenXR en tu proyecto, debes importar los paquetes necesarios dentro de Unity para poder desarrollar y probar tus aplicaciones de manera efectiva.

Dirígete a la pestaña Package Manager en la parte superior izquierda de la ventana Project Settings. Dentro de esta, selecciona Enable Pre-releases Packages. Al hacer esta acción, permitirás que tu proyecto tenga acceso a futuras actualizaciones que se hagan para los paquetes a importar. Acepta los cambios dando click en I Understand.

Cierra la ventana de Project Settings, navega hacia la pestaña Window, en la parte superior del editor, selecciona Package Manager.

En la parte superior izquierda de la ventana, selecciona el símbolo (+) y oprime Add package by name.

En la barra emergente debe escribir com.unity.xr.interaction.toolkit para instalar la última versión de XR Interaction Toolkit, seleccione el botón Add para confirmar la instalación.

Al finalizar la instalación, puede que salga un diálogo informando que se deben realizar algunos cambios internos dentro de Unity para darle soporte a XR Interaction Toolkit. Como este es un proyecto nuevo, permite que Unity realice los ajustes necesarios haciendo click en I Made a Backup, Go Ahead! Si no recibiste este anuncio, puedes omitir este paso.

Cuando Unity termine de realizar los cambios, es necesario importar Starter Assets y XR Device Simulator. Podrás encontrarlos debajo de Samples en la ventana XR Interaction Toolkit. Selecciona el botón Import en ambos casos.

En caso de presentar errores, se abrirá la ventana de validación del proyecto. Basta con oprimir en Fix All para indicarle a Unity que solucione estos problemas automáticamente.

Cierras la ventana Package Manager. Ahora, en la parte inferior del editor, ubica la pestaña Project y selecciona el prefab llamado XR Origin (XR Rig). Podrás encontrar este prefab siguiendo la ruta: Assets - Samples - XR Interaction Toolkit - 3.0.4 (tu versión) - Starter Assets - Prefabs.

Añade el prefab XR Origin (XR Rig) a la escena arrastrándolo como se indica en la siguiente imagen.

Repite los pasos anteriores para ubicar y añadir el prefab llamado XR Device Simulator. Podrás encontrar este prefab siguiendo la ruta: Assets - Samples - XR Interaction Toolkit - 3.0.4 (tu versión) - XR Device Simulator.

El prefab Complete XR Origin Set Up tiene una cámara adjunta, así como la noción de controles para realidad virtual. Por lo tanto, elimine el objeto Main Camera de su escena, haciendo click derecho y seleccionando Delete.

Verifica que las instalaciones se hayan realizado correctamente dando click en la pestaña Game, luego en play (▶️). Al seleccionar este botón se abrirá la vista de juego, deberías ver algo similar a la siguiente imagen.

A continuación, debes importar la primera escena de nuestro curso para iniciar el primer módulo del curso. Para ello, debes descargar el siguiente archivo (Al dar click en el enlace se descargará en tu computador automaticamente) Modulo1.unitypackage.

Luego, en tu proyecto de Unity te diriges a Assets > Import Package > Custom Package

Esto te abrirá el explorador de archivos, allí seleccionas el archivo que descargaste previamente.

A continuación, seleccionas la opción Import y esperas a que se complete el proceso.

Finalmente, te diriges a la ventana project y vas a Assets > Scenes > Ejercicio

¡Listo! ya tienes el proyecto base para comenzar a crear.

¡Felicidades! Has completado el codelab de Creación de Proyecto XR. Ahora, estás listo para crear y probar con controles XR tus aplicaciones. Esperamos que esta guía te haya sido útil. Te invitamos a seguir explorando con Unity.