Desarrollando para Oculus Quest

Introducción

Este tutorial explica cómo empezar a desarrollar para Oculus Quest con un plugin oficial de Godot.

Antes de empezar, hay dos cosas que debes hacer:

Primero tienes que seguir los pasos de la página Exportación para Android. Esto te lleva a la instalación del conjunto de herramientas que Godot necesita para exportar a dispositivos Android.

A continuación necesitas el plugin de Quest. Puedes obtenerlo de la Biblioteca de Activos o descargarlo manualmente de aquí.

Configurando Godot

Para empezar, abre a Godot y crea un nuevo proyecto.

../../_images/quest_new_project.png

Asegúrate de elegir el renderizador de GLES2. Debido a la GPU de la Quest, este backend es mucho más adecuado para la Quest.

Copia la carpeta addons del activo de Oculus Mobile en tu proyecto Godot. El árbol de tu proyecto debería tener un aspecto similar a este:

../../_images/quest_project_tree.png

Ahora puedes empezar a construir la escena principal:

  • Añade un nodo ARVROrigin primero.

  • Luego agrega tres nodos hijos al nodo de origen, uno ARVRCamera y dos nodos ARVRController.

  • Asigna el ID del controlador 1 al primero ARVRController y renombra eso a LeftHand.

  • Asigna el ID del controlador 2 al segundo ARVRController y renombra eso a RightHand.

  • Finalmente agrega un MeshInstance como nodo hijo a nuestro primer ARVRController y crea una forma de caja, cambia el tamaño de la caja para que cada lado se ponga a 0.1. Ahora duplica el nodo MeshInstance y muévelo al segundo ARVRController. Estos serán nuestros controladores.

../../_images/quest_scene_tree.png

Ahora añade un script al nodo principal y agrega el siguiente código:

extends Spatial


var perform_runtime_config = false


onready var ovr_init_config = preload("res://addons/godot_ovrmobile/OvrInitConfig.gdns").new()
onready var ovr_performance = preload("res://addons/godot_ovrmobile/OvrPerformance.gdns").new()


func _ready():
    var interface = ARVRServer.find_interface("OVRMobile")
    if interface:
        ovr_init_config.set_render_target_size_multiplier(1)

        if interface.initialize():
            get_viewport().arvr = true


func _process(_delta):
    if not perform_runtime_config:
        ovr_performance.set_clock_levels(1, 1)
        ovr_performance.set_extra_latency_mode(1)
        perform_runtime_config = true

Antes de poder exportar tu proyecto al Quest, deberás hacer tres cosas más.

Primero ve a la configuración del proyecto y asegúrate de que la escena principal es la que nosotros dirigimos. Godot no te pide que configures esto en la exportación.

../../_images/quest_project_settings.png

Then go into the export menu and configure a new Android export. If you still haven't gone through the Exportación para Android page do it now. If you didn't you'll have some red messages on this screen.

Si lo hizo, puede seguir adelante y hacer algunos pequeños cambios en la configuración de la exportación. Primero cambia el modo XR a Oculus Mobile VR. Luego cambia el modo Grados de Libertad a 6DOF.

../../_images/quest_export_settings.png

Ahora guarda y cierra la ventana de exportación.

Configurando Tu Quest

Finalmente saca tu teléfono, cuando recibiste tu Quest necesitabas instalar una aplicación de Oculus en él y enlazarlo a tu Quest. Inicia la aplicación de Oculus. Presiona la rueda dentada de configuración en la parte inferior derecha. Selecciona tu misión:

../../_images/quest_phone_settings.png

Selecciona "Más ajustes", y selecciona "Modo de desarrollo":

../../_images/quest_phone_settings_2.png

Ahora enciende el modo de desarrollo:

../../_images/quest_developer_mode.png

Esto te permite desplegar tus juegos en la Quest.

Conecta el Quest a tu PC con el cable USB suministrado. Encienda la Quest, pueden aparecer algunas ventanas para dar al PC permiso para desplegar aplicaciones. Ahora presiona el botón pequeño de Android que debería ser visible en la parte superior derecha de tu ventana de Godot. Debería construir tu juego y exportarlo a la Quest.

Lo anterior hace lo mínimo para que tu proyecto funcione en la Quest, no es muy emocionante. Holger Dammertz ha creado un gran kit de herramientas para la Quest que contiene un montón de escenas para ayudarte en tu camino, incluyendo muy buenas mallas de control.

Puedes encontrar el kit de herramientas aquí.

Si quieres ayudar mejorando este plugin, por favor únete a nosotros aquí.