Snap Interaction

En este apartado, aprenderemos a usar interacciones de tipo Snap en Meta Quest y Unity. Esta funcionalidad nos permite hacer que los objetos se ajusten automáticamente a una posición predefinida, asegurando interacciones más precisas y organizadas en nuestro entorno de realidad virtual. 

Para ayudarte a implementar esta funcionalidad de forma práctica, a continuación encontrarás un video tutorial que muestra cómo configurar correctamente las interacciones tipo Snap usando los Building Blocks del Meta XR SDK tanto para este apartado como para el siguiente de Snap Interaction Avanzado

Video: Snap Interaction: Posiciona Objetos Automáticamente en VR | Tutorial Unity Meta Quest 

Implementación de Snap Interaction 

Crear una nueva escena:

  • Vamos a File > New Scene y elegimos Basic (3D).
  • Eliminamos la Main Camera, ya que no la necesitaremos.
  • Guardamos la escena con Ctrl + S y la llamamos "Snap Interaction".

Agregar la cámara e interacciones:

  • En la ventana Project, buscamos OVR Camera Rig en la pestaña All.
  • Arrastramos el Prefab a la jerarquía.

Crear el objeto interactuable:

  • Creamos un Cubo (Right Click > 3D Object > Cube).
  • Ajustamos su posición a:
    • X: 0
    • Y: 1.25
    • Z: 0.35
  • Escalamos el cubo a 0.15 en X, Y y Z.

Hacer que el cubo sea interactuable:

  • En la jerarquía, clic derecho sobre el cubo y seleccionamos:
    XR > Add Grab Interaction.
  • Pulsamos Fix All para configurar correctamente la interacción.
  • Le damos a Create.

Crear el Snap Interactor:

  • Dentro del Cubo, creamos un objeto vacío y lo llamamos "Snap Interactor".
  • Le agregamos el componente Snap Interactor.
  • En el campo Grabbable Element, referenciamos Hand Grab Interaction.
  • Activamos Is Trigger en el collider del objeto padre.

Crear el punto de Snap:

  • Fuera del cubo, creamos otro objeto vacío llamado "Snap Interactable".
  • Lo posicionamos en:
    • X: 0.35
    • Y: 1
    • Z: 0.35
  • Le agregamos:
    • Un Box Collider (para definir la zona de Snap).
    • Un Rigidbody con Use Gravity (desactivado) y Is Kinematic (activado).
    • Añadimos la script Snap Interactable.

Añadir un indicador visual:

  • Dentro del Snap Interactable, creamos un nuevo Cubo.
  • Ajustamos su escala a 0.155 en X, Y y Z.
  • Creamos un nuevo Material llamado "Snap Visual" y le damos un color naranja.
  • Cambiamos el Rendering Mode a Transparent y bajamos la Opacidad al 50
  • Aplicamos el material al cubo indicador.
  • Eliminamos su collider.

Prueba de la Interacción

Ahora, al tomar el cubo y soltarlo dentro de la zona de Snap, este se ajustará automáticamente a la ubicación definida. Además, cuando el cubo entra en el Snap, el indicador verde desaparece, y cuando se retira, vuelve a aparecer como se muestra en el video a continuación:

¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar