Realidad Virtual
Referencia de VR (Realidad Virtual)

Visión General de VR

Unity 5.1 y posterior contiene un soporte integrado para ciertos dispositivos VR.

Visión General

VR ha sido tradicionalmente soportado en Unity vía plugins externos. Esto tiene ciertos defectos:

  • Cada dispositivo VR tiene un diferente plugin.
  • Los plugins pueden entrar en conflicto el uno con el otro.
  • Cambiar entre plugins de VR para soportar múltiples dispositivos es una gran cantidad de trabajo extra.
  • Cada lanzamiento nuevo SKD de VR / Los tiempos de ejecución puede romper juegos viejos.
  • Cambiar entre modo VR y no VR es no trivial.
  • Optimizaciones de bajo nivel del motor no son posibles con un acercamiento de plugin de dos cámaras separadas.

El VR de Unity agrega la habilidad de tener como objetivo dispositivos VR directamente desde Unity sin la necesidad de tener plugins externos. Este proporciona un API base y un conjunto de características con el objetivo de una compatibilidad hacia adelante para dispositivos y software. La API superficie proporcionada hoy es minima por diseño, y se expandirá a medida que aprendemos más acerca de las necesidades de desarrolladores de VR.

Habilitando el Soporte VR de Unity

Para habilitar VR para las construcciones de su juego y el editor, configure la opción “Virtual Reality Supported” en Player Settings.

Qué pasa cuando VR está habilitado

Cuando VR esté activado en Unity, unas pocas cosas suceden automáticamente para usted:

Visualización estereoscópica automática

  • No se requiere tener dos cámaras para visualizaciones estereoscopias. Cualquier cámara que no tenga una textura renderizada es automáticamente renderizada en stereo para su dispositivo. Las matrices de vista y proyección son ajustadas para tener en cuenta el campo de visión y el headtracking (seguimiento de cabeza).
  • Las optimizaciones ocurren automáticamente para que sea menos costoso dibujar frames dos veces (uno para cada ojo)

Un input Headtracked (seguimiento de cabeza) Automático

  • El Head Tracking (seguimiento de la cabeza) y un FOV (Field of View (Campo de visión) ) es automáticamente aplicado a su cámara (si su dispositivo es montado en la cabeza).
  • Esto sucede por defecto ya que un head tracking (seguimiento de cabeza) de baja latencia es integral a una buena experiencia VR.

Entendiendo la cámara

  • El transform de la cámara es anulado con la pose resultante del seguimiento de cabeza.
  • Si usted quiere mover la cámara, usted debe adjuntarla como un hijo de otro game object y luego mover el game object raíz.
  • Usted necesitará ajustar scripts que directamente muevan la cámara.
  • Piense de la posición de la cámara y la orientación como dónde usted quiere que el usuario esté mirando en su posición neutral.
  • Si usted necesita reset la posición neutral, utilice VR.InputTracking.Recenter().
  • Usted va a necesitar ajustar las cámaras que asumen un campo de visión especifico. EL campo de visión es anulado por el Dispositivo VR.
  • Sus escenas necesitan tener en cuenta que la cámara puede apuntar en cualquier dirección.
  • Dependiendo en el dispositivo VR, la cámara puede potencialmente moverse también.
  • Por ahora, usted debe utilizar el SDK de Oculus para obtener el volumen del movimiento o el movimiento de bloqueo. Esto será expuesto a través de Unity en el futuro.
  • Muchos efectos de imagen de la cámara no se ven bien en VR. Ej. Campo de Profundidad

Modo del Editor

  • Para habilitar VR para las construcciones de su juego y el editor, configure la opción “Virtual Reality Supported” en los Player Settings.
  • Si su dispositivo VR soporta el modo de Editor de Unity (Ej. Oculus DK2), presionar reproducir en el editor le va a permitir a usted probar directamente su dispositivo.
  • Por favor tenga en cuenta que hay alguna sobrecarga al correr en el editor y usted puede experimentar lag o vibración si no es renderizado en la tasa apropiada de frame.
  • Es recomendado utilizar “Maximize on Play” para la Game View (Vista del juego) para reducir la sobre-carga de renderizado del editor.
  • El profiler de Unity le dice a usted cómo su rendimiento será cuando corra afuera del editor. Si usted está intentando optimizar para que el editor corra bien, asegúrese de que usted active el profiling del editor para ver la sobre-carga del editor.

Construcciones Standalone: Escogiendo un Dispositivo VR

La opción para comenzar en el modo VR se guarda por computador, y por defecto aparece como el VR Apagado en el momento.

Para escoger un Dispositivo VR, usted puede iniciar Unity o la aplicación de Unity con el siguiente argumento de la linea de comando:

-vrmode DEVICETYPE

dónde DEVICETYPE es uno de los nombres de la lista de dispositivos VR soportados. Ej.

Game.exe -vrmode oculus

O, usted puede solicitar que un Dispositivo VR sea cargado en tiempo de ejecución por al configurar el dispositivo cargado.

Una vez un dispositivo VR sea cargado (loadedDevice devuelve algo en vez de None (Ninguno), usted puede habilitar VR globalmente y comenzar a renderizar en su dispositivo al ajustar VR.VRSettings.enabled a true.

Información del dispositivo VR

VRDevice.family es un string correspondiente al VRSettings.loadedDevice actual. UNa familia puede tener múltiples modelos que tengan diferentes características. Por ejemplo: Oculus tiene DK2, Gear VR, etc. El modelo puede ser accedido con VRDevice.model.

Realidad Virtual
Referencia de VR (Realidad Virtual)