En esta guía, se muestra cómo usar el complemento de Google Cardboard XR para Unity para crear tus propias experiencias de realidad virtual (RV).
Puedes usar el SDK de Cardboard para convertir un teléfono celular en una plataforma de RV. Un dispositivo móvil puede mostrar escenas en 3D con renderización estereoscópica, hacer un seguimiento de los movimientos de la cabeza y reaccionar a ellos, y detectar cuándo el usuario presiona el botón del visor para interactuar con las apps.
Para comenzar, usarás HelloCardboard, un juego de demostración que muestra las funciones principales del SDK de Cardboard. En el juego, los usuarios exploran un mundo virtual para encontrar y recopilar objetos. En él, se muestra cómo hacer lo siguiente:
- Configura tu entorno de desarrollo
- Descarga y compila la app de demostración
- Cómo escanear el código QR de un visor Cardboard para guardar sus parámetros
- Hacer un seguimiento de los movimientos de la cabeza del usuario
- Renderiza imágenes estereoscópicas configurando la distorsión correcta para cada ojo
- Cómo activar y desactivar el modo de VR
Configura tu entorno de desarrollo
Requisitos de software:
- Unity 6000.0.23f1 o una versión posterior
- Asegúrate de incluir la compatibilidad con compilación para iOS y Android durante la instalación.
- Asegúrate de instalar la versión de parche 23f1 o posterior.
- Git debe estar instalado y el ejecutable
gitdebe estar en la variable de entornoPATH. Consulta los documentos sobre la compatibilidad con Git del administrador de paquetes de Unity para obtener más detalles.
Importa el SDK y crea un proyecto nuevo
Sigue estos pasos para importar el SDK de Unity y crear un proyecto nuevo.
- Abre Unity y crea un proyecto 3D nuevo.
- En Unity, ve a Window > Package Manager.
- Haz clic en + y selecciona Add package from git URL.
- Pega
https://github.com/googlevr/cardboard-xr-plugin.giten el campo de entrada de texto.
El paquete se debe agregar a los paquetes instalados. - Navega al paquete Google Cardboard XR Plugin for Unity. En la sección Samples, elige Import into Project.
Los recursos de muestra se deben cargar enAssets/Samples/Google Cardboard/<version>/Hello Cardboard.
Configura la escena de HelloCardboard
- Navega a
Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes, selecciona Add Open Scenes y elige HelloCardboard para abrir la escena de ejemplo. - Abre el menú Capas y selecciona Editar capas….
- Define una nueva capa llamada "Interactive".
- Haz clic en el objeto de juego Treasure para abrir la ventana del Inspector. Establece su capa como "Interactive". Si aparece una ventana emergente que te pregunta si también quieres establecer la capa como interactiva para todos los objetos secundarios, haz clic en "Sí, cambiar los secundarios".
- Haz clic en el objeto de juego Player > Camera > CardboardReticlePointer para abrir la ventana Inspector. En la secuencia de comandos "Puntero de retículo de Cardboard", selecciona "Interactivo" como la Máscara de capa de interacción del retículo.
Cómo configurar los parámetros de compilación de Android
Navega a File > Build Settings.
- Selecciona Android y elige Switch Platform.
- Selecciona Add Open Scenes y elige HelloCardboard.
Player Settings
Ve a Editar > Configuración del proyecto….
Configura los parámetros de resolución y presentación
Navega a Reproductor > Resolución y presentación.
- Establece la orientación predeterminada en Horizontal (izquierda) o Horizontal (derecha).
- Inhabilita Optimized Frame Pacing.
Configura Otros parámetros de configuración
Navega a Player > Other Settings.
- Elige
OpenGLES2,OpenGLES3oVulkan, o cualquier combinación de ellos en APIs de gráficos. - Selecciona
Android 8.0 'Oreo' (API level 26)o una versión posterior en Minimum API Level. - Selecciona
API level 35o una versión posterior en Target API Level. - Selecciona
IL2CPPen Scripting Backend. - Selecciona las arquitecturas deseadas eligiendo
ARMv7,ARM64o ambas en Target Architectures. - Selecciona
Requireen Acceso a Internet. - Selecciona
Input System Package (New)en Active Input Handling. - Especifica el dominio de tu empresa en Package Name.
- Si se seleccionó
Vulkancomo API de gráficos, haz lo siguiente:- Borra la casilla de verificación Aplicar rotación de pantalla durante el procesamiento en Configuración de Vulkan.
- Selecciona
ETC2en Formato de compresión de texturas.
- Selecciona
Activityy borraGameActivityen Punto de entrada de la aplicación.
Configura los parámetros de publicación
Navega a Player > Publishing Settings.
- En la sección Compilación, selecciona
Custom Main Gradle TemplateyCustom Gradle Properties Template. Agrega las siguientes líneas a la sección de dependencias de
Assets/Plugins/Android/mainTemplate.gradle:implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'com.google.android.gms:play-services-vision:20.1.3' implementation 'com.google.android.material:material:1.12.0' implementation 'com.google.protobuf:protobuf-javalite:3.19.4'Agrega las siguientes líneas a
Assets/Plugins/Android/gradleTemplate.properties:android.enableJetifier=true android.useAndroidX=true
Configura los ajustes de administración de complementos de XR
Navega a XR Plug-in Management.
- Selecciona
Cardboard XR Pluginen Proveedores de complementos.
Cómo compilar un proyecto
Navega a File > Build Settings.
- Selecciona Build o elige un dispositivo y selecciona Build and Run.
Cómo configurar los parámetros del proyecto de iOS
Navega a File > Build Settings.
- Selecciona iOS y elige Switch Platform.
- Selecciona Add Open Scenes y elige HelloCardboard.
Player Settings
Ve a Editar > Configuración del proyecto….
Configura los parámetros de resolución y presentación
Navega a Player > Resolution and Presentation.
- Establece la orientación predeterminada en Horizontal (izquierda) o Horizontal (derecha).
Configura Otros parámetros de configuración
Navega a Player > Other Settings.
- En Camera Usage Description, escribe
Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters).. - En Target minimum iOS Version, escribe
12.0. - Especifica el dominio de tu empresa en Package Name.
- Marca
Top Edge,Left EdgeyRight Edgeen Posponer los gestos del sistema en los bordes.
Configura los ajustes de administración de complementos de XR
Navega a XR Plug-in Management.
- Selecciona
Cardboard XR Pluginen Proveedores de complementos.
Cómo compilar un proyecto
Navega a File > Build Settings.
- Selecciona Build o Build and Run.
Volver a centrar
El SDK de Cardboard te permite volver a centrar el sensor de seguimiento de la cabeza con Recenter().
Sigue estos pasos para probarla con la aplicación de ejemplo:
- Mueve el dispositivo a la posición en la que deseas volver a centrarlo (úsalo como una nueva posición de la cabeza mirando hacia adelante).
- Mantén el gatillo del dispositivo Cardboard activo durante al menos tres segundos.
- Suelta el gatillo.
- La posición inicial ahora está en la dirección hacia la que apunta la cámara.
Cómo activar y desactivar el modo de VR
La API de Unity XR Plugin Management te permite activar o desactivar el modo de RV para el complemento Google Cardboard XR para Unity. La documentación para el usuario final y los ejemplos de uso están disponibles en la documentación para el usuario final de Unity.
La escena VrMode en el ejemplo de HelloCardboard muestra un uso básico de la API mencionada anteriormente. En esta escena, puedes desactivar el modo de RV presionando Salir
y volver a activarlo
presionando en cualquier lugar de la pantalla. Consulta VrModeController.cs para obtener detalles sobre cómo se realiza esta acción.