Jump to content
UnitySpain

Aceptamos donaciones vía Paypal.

UnitySpain.com es un servicio gratuito, pero mantener la Comunidad conlleva una serie de gastos.

Fondo Anual Unityspain: Donados 44,01€ de 150,00€

  • Servidor: Dominio.com y Hosting Web
  • Mantenimiento de los Foros
  • Contenido y Servicios Extras
  • Mantenimiento para Redes Sociales
Lapigames

Splash screen en VR

Recommended Posts

Buenas comunidad,

antes de nada, si este mensaje no está en el grupo correcto, perdóname @pioj.

Despues de dejarlo aparcado mucho tiempo, he decidido darle la puntilla a mi juego en VR para daydream y cardboard. Pero me falta un pequeño detalle, y no he visto manera de solucionarlo. Me gustaría que la splash screen no apareciese en vr. A ver, me explicó, todo el juego es vr, con las librerías de Google, menos la primera pantalla, que será un aviso y algunos parámetros de configuración, además del único anunció que tendrá el juego.

el problema es que queda raro, que la splash sea en vr, el anuncio y la pantalla siguiente no, y después otra vez vr.

¿alguien sabe cómo solucionarlo?

gracias de antemano 

Share this post


Link to post
Share on other sites

Bueno, después de leerme a fondo la documentación y probar y reprobar, me respondo a mi mismo, por si alguien tiene alguna vez el mismo problema, pueda solucionarlo :).

Lo primero que he tenido que hacer, es en player settings cuando vas a hacer el build, en el apartado

7OkWI.png

Y aquí, antes de Daydream hay que poner None, para que arranque sin VR.

Después, en el código de la parte donde comienza la experiencia VR poner la siguiente Couroutine:

IEnumerator SwitchToVR() {
  // Los nombres de los dispositivos están en minúsculas, como los devuelve `XRSettings.supportedDevices`.
  string desiredDevice = "daydream"; // O "cardboard" si es nuestro caso.

  // Algunos dispositivos VR no admiten la recarga cuando ya están activos, consulta
  // https://docs.unity3d.com/ScriptReference/XR.XRSettings.LoadDeviceByName.html
  if (String.Compare(XRSettings.loadedDeviceName, desiredDevice, true) != 0) {
    XRSettings.LoadDeviceByName(desiredDevice);

    // Debe esperar un fotograma después de llamar a `XRSettings.LoadDeviceByName ()`.
    yield return null;
  }

  // Ahora está todo bien para habilitar el modo VR.
  XRSettings.enabled = true;
}

Yo lo que hago en el start es llamarla con la siguiente línea:

StartCoroutine(SwitchToVR());

Y eso es todo.

Un saludo

Share this post


Link to post
Share on other sites

Ya lo he supuesto, pero tenía que preguntar, por si acaso. De todas formas he dado la solución que he encontrado, por si en un futuro alguien tiene el mismo problema, encuentre una respuesta a la pregunta.

Gracias @BAMF por responder ;)

Share this post


Link to post
Share on other sites

×