Guía de inicio rápido de Google Cardboard para Unity

En esta guía, se muestra cómo usar el complemento XR de Google Cardboard para Unity para Unity a fin de crear tus propias experiencias de realidad virtual (RV).

Puedes usar el SDK de Cardboard para convertir un teléfono móvil en una plataforma de RV. Un smartphone puede mostrar escenas 3D con renderización estereoscópica, hacer un seguimiento de los movimientos de la cabeza y reaccionar ante ellos, e interactuar con las apps detectando cuándo el usuario presiona el botón del visor.

Para comenzar, usarás HelloCardboard, un juego de demostración que muestra las funciones principales del SDK de Cardboard. En el juego, los usuarios miran alrededor de un mundo virtual para encontrar y recolectar objetos. Allí se indica cómo realizar las siguientes acciones:

  • Cómo configurar tu entorno de desarrollo
  • Descarga y compila la app de demostración
  • Escanea 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.
  • Activar y desactivar el modo RV

Cómo configurar tu entorno de desarrollo

Requisitos de software:

Importa el SDK y crea un proyecto nuevo

Sigue estos pasos para importar el SDK de Unity y crear un proyecto nuevo.

  1. Abre Unity y crea un nuevo proyecto 3D.
  2. En Unity, ve a Window > Package Manager.
  3. Haz clic en + y selecciona Add package from git URL.
  4. Pega https://github.com/googlevr/cardboard-xr-plugin.git en el campo de entrada de texto.
    El paquete se debe agregar a los paquetes instalados.
  5. Navega al paquete del complemento XR de Google Cardboard para Unity. En la sección Samples, selecciona Import into Project.
    Los elementos de muestra deben cargarse en Assets/Samples/Google Cardboard/<version>/Hello Cardboard.

Configura la escena de HelloCardboard

  1. Navega a Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes, selecciona Add Open Scenes y elige HelloCardboard para abrir la escena de muestra.
  2. Abre el menú Capas y selecciona Editar capas....
  3. Define una nueva capa llamada "interactiva".
  4. Haz clic en el GameObject Treasure para abrir la ventana del Inspector. Establece la capa como "Interactiva". Si aparece una ventana emergente que te pregunta si también quieres configurar una capa como interactiva para todos los objetos secundarios, haz clic en "Yes, change children".
  5. Haz clic en el GameObject Player > Camera > CardboardReticlePointer para abrir la ventana del Inspector. En la secuencia de comandos "Puntero de retículo de cartón", selecciona "Interactivo" como Máscara de capa de interacción con retículo.

Cómo establecer configuraciones de proyectos de Android

Ve a File > Build Settings.

  1. Selecciona Android y elige Switch Platform.
  2. Selecciona Add Open Scenes y elige HelloCardboard.

Player Settings

Resolución y presentación

Ve a Project Settings > Player > Resolution and Presentation.

  1. Establece la Orientación predeterminada en Horizontal Left o Landscape Right.
  2. Inhabilita Optimized Frame Pacing.

Otras configuraciones

Ve a Project Settings > Player > Other Settings.

  1. Elige OpenGLES2, OpenGLES3 o Vulkan, o cualquier combinación de ellos en las APIs de gráficos.
  2. Selecciona Android 8.0 'Oreo' (API level 26) o una versión posterior en Nivel mínimo de API.
  3. Selecciona API level 33 o una versión posterior en Target API Level.
  4. Selecciona IL2CPP en Backend de secuencias de comandos.
  5. Para seleccionar las arquitecturas deseadas, elige ARMv7, ARM64 o ambos en Arquitecturas de destino.
  6. Selecciona Require en Acceso a Internet.
  7. Especifica el dominio de tu empresa en Package Name.
  8. Si se seleccionó Vulkan como API de gráficos, haz lo siguiente:
    • Desmarca la casilla de verificación Aplicar rotación de pantalla durante la renderización en Configuración de Vulkan.
    • Si la versión de Unity es la 2021.2 o posterior, selecciona ETC2 en Formato de compresión de texturas.
  9. Si la versión de Unity es 2023.1 o posterior, selecciona Activity y borra GameActivity en Application Entry Point.

Configuración de publicación

Ve a Project Settings > Player > Publishing Settings.

  1. En la sección Build, selecciona Custom Main Gradle Template y Custom Gradle Properties Template.
  2. 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.6.1'
      implementation 'com.google.protobuf:protobuf-javalite:3.19.4'
    
  3. Agrega las siguientes líneas a Assets/Plugins/Android/gradleTemplate.properties:

      android.enableJetifier=true
      android.useAndroidX=true
    

Configuración de la administración de complementos XR

Ve a Configuración del proyecto > Administración de complementos XR.

  1. Selecciona Cardboard XR Plugin en Proveedores de complementos.

Cómo compilar un proyecto

Ve a File > Build Settings.

  1. Selecciona Build o elige un dispositivo y selecciona Build and Run.

Establece la configuración del proyecto de iOS

Ve a File > Build Settings.

  1. Selecciona iOS y elige Switch Platform.
  2. Selecciona Add Open Scenes y elige HelloCardboard.

Player Settings

Resolución y presentación

Ve a Project Settings > Player > Resolution and Presentation.

  1. Establece la Orientación predeterminada en Horizontal Left o Landscape Right.

Otras configuraciones

Ve a Project Settings > Player > Other Settings.

  1. En Descripción del uso de la cámara, escribe Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters)..
  2. En Versión mínima de iOS de destino, escribe 12.0.
  3. Especifica el dominio de tu empresa en Package Name.

Configuración de la administración de complementos XR

Ve a Configuración del proyecto > Administración de complementos XR.

  1. Selecciona Cardboard XR Plugin en Proveedores de complementos.

Cómo compilar un proyecto

Ve a File > Build Settings.

  1. Selecciona Build o Build and Run.

Volver a centrar

El SDK de Cardboard te permite volver a centrar el monitor de cabeza con Recenter().

Sigue estos pasos para probarlo con la aplicación de muestra:

  1. Mueve el dispositivo a la posición que quieras volver a centrar (usa como nueva postura de cabeza mirando hacia adelante).
  2. Mantén activo el gatillo de tu dispositivo cartón durante al menos tres segundos.
  3. Suelta el gatillo.
  4. La pose inicial ahora está en la dirección hacia la que apunta la cámara.

Cómo activar y desactivar el modo de RV

La API de Unity XR Plugin Management te permite activar o desactivar el modo de RV para el complemento XR de Google Cardboard para Unity. La documentación para usuarios finales y los ejemplos de uso están disponibles en la documentación para usuarios finales de Unity.

En la escena VrMode de la muestra de HelloCardboard, se muestra un uso básico de la API mencionada. En esta escena, el modo RV se puede desactivar presionando exit , y se puede volver a activar presionando cualquier parte de la pantalla. Consulta VrModeController.cs para obtener detalles sobre cómo se realiza.

Próximos pasos