Implementación en Oculus QuestDeploying to Oculus Quest

Se requiere una misión de Oculus.An Oculus Quest is required.

La compatibilidad de MRTK con Oculus Unity se realiza a través de dos orígenes diferentes, la canalización del SDK de XR de Unity y el paquete de Unity de integración de Oculus.MRTK's support for the Oculus Quest comes via two different sources, Unity's XR SDK pipeline and the Oculus Integration Unity package. El proveedor de datos XRSDK de Oculus permite el uso de ambos orígenes y debe usarse para implementar MRTK en Oculus Quest.The Oculus XRSDK Data Provider enables the use of both sources and must be used to deploy MRTK on the Oculus Quest.

La canalización del SDK de XR de Unity permite el uso de controladores táctiles de Oculus y el seguimiento de la cabeza con Oculus Tracking.The Unity XR SDK Pipeline enables the use of Oculus Touch controllers and head tracking with the Oculus Quest. Esta canalización es el estándar para desarrollar aplicaciones XR en Unity 2019.3 y posteriores.This pipeline is the standard for developing XR applications in Unity 2019.3 and beyond. Para usar esta canalización, asegúrese de usar Unity 2019.3 o una versión más reciente.To use this pipeline, make sure that you using Unity 2019.3 or newer. Esto es necesario para implementar aplicaciones MRTK en Oculus Quest.This is required to deploy MRTK applications to the Oculus Quest.

El paquete de Unity de integración de Oculus permite el uso del seguimiento manual con Oculus Quest.The Oculus Integration Unity package allows for the use of hand tracking with the Oculus Quest. Este proveedor de datos NO usa la canalización del SDK de XR de Unity ni la canalización de XR heredada.This data provider does NOT use Unity's XR SDK Pipeline or Legacy XR Pipeline.

Configuración del proyecto para Oculus QuestSetting up project for the Oculus Quest

  1. Siga estos pasos para asegurarse de que el proyecto está listo para implementarse en Oculus Quest.Follow these steps to ensure that your project is ready to deploy on Oculus Quest.

  2. Asegúrese de que el modo de desarrollador está habilitado en el dispositivo.Ensure that developer mode is enabled on your device. La instalación de los controladores de ADB de Oculus es opcional.Installing the Oculus ADB Drivers is optional.

Configuración de la canalización del SDK de XR para Oculus QuestSetting up the XR SDK Pipeline for Oculus Quest

  1. Asegúrese de que el complemento Oculus XR está instalado en Window --> Administrador de paquetesEnsure that the Oculus XR Plugin is installed under Window --> Package Manager

    Paquete del complemento XR de Oculus

  2. Asegúrese de que el proveedor de complementos de Oculus está incluido en el proyecto; para ello, vaya a Edit --> Project Configuración --> XR Plug-in Management --> Plug-in Providers (Editar --> Project Configuración --> XR Plug-in Management --> Plug-in Providers [Editar --> Project Configuración --> XR Plug-in Management --> Plug-in Providers].Make sure that the Oculus Plug-in Provider is included in your project by going to Edit --> Project Settings --> XR Plug-in Management --> Plug-in Providers

    Proveedor de complementos de Oculus

Configuración del paquete de Unity de integración de Oculus para habilitar el seguimiento a manoSetting up the Oculus Integration Unity package to enable handtracking

  1. Descargue e importe Oculus Integration desde el almacén de recursos de Unity.Download and import Oculus Integration from the Unity Asset Store. La versión más reciente probada para funcionar es 20.0.0.The latest version tested to work is 20.0.0. Las versiones anteriores se pueden encontrar en este archivo.Older versions can be found from this archive.

  2. Vaya a Mixed Reality Toolkit > Utilities > Oculus > Integrate Oculus Integration Unity Modules (Integrar módulos de Unity de integración de Oculus).Navigate to Mixed Reality Toolkit > Utilities > Oculus > Integrate Oculus Integration Unity Modules. Al hacerlo, se actualizarán las definiciones de asmdefs con las definiciones y las referencias necesarias para que el código de Oculus Quest pertinente funcione.Doing this will update the asmdefs with definitions and references needed for the relevant Oculus Quest code to function. También actualizará el archivo csc para filtrar las advertencias obsoletas producidas por los recursos de integración de Oculus.It will also update the csc file to filter out the obsolete warnings produced by the Oculus Integration assets. El repositorio de MRTK contiene un archivo csc que convierte las advertencias en errores. Esta conversión detiene el proceso de MRTK-Quest configuración.The MRTK repo contains a csc file that converts warnings to errors, this conversion halts the MRTK-Quest configuration process.

    Asmdef de integración de Oculus

  3. En la carpeta Oculus importada (debe encontrarse en Assets/Oculus), hay un objeto que puede incluir scripts denominado OculusProjectConfig.In the imported Oculus folder (It should be found at Assets/Oculus), there is a scriptable object called OculusProjectConfig. En ese archivo de configuración, debe establecer HandTrackingSupport en "Controladores y manos".In that config file, you need to set HandTrackingSupport to "Controllers and Hands".

    Controlador de integración de Oculus y manos

Configuración de la escenaSetting up the scene

  1. Cree una nueva escena de Unity o abra una escena preexistida como HandInteractionExamples.Create a new Unity scene or open a pre-existing scene like HandInteractionExamples.
  2. Agregue MRTK a la escena; para Mixed Reality Toolkit agregar a la escena > y configurar.Add MRTK to the scene by navigating to Mixed Reality Toolkit > Add to Scene and Configure.

Uso del proveedor de datos del SDK de Oculus XRUsing the Oculus XR SDK Data Provider

  1. Configuración del perfil para usar el proveedor de datos del SDK de Oculus XRConfigure your profile to use the Oculus XR SDK Data Provider
    • Si no pretende modificar los perfiles de configuraciónIf not intending to modify the configuration profiles

    • De lo contrario, siga estos pasos:Otherwise follow the following:

      • Seleccione el objeto de juego MixedRealityToolkit en la jerarquía y seleccione Copiar y personalizar para clonar el perfil de realidad mixta predeterminado.Select the MixedRealityToolkit game object in the hierarchy and select Copy and Customize to clone the default mixed reality profile.

      Clonar perfil

      • Seleccione el perfil de configuración de entrada.Select the Input Configuration Profile.

      Perfil de configuración de entrada

      • Seleccione Clonar en el perfil del sistema de entrada para habilitar la modificación.Select Clone in the input system profile to enable modification.

      Clonar perfil del sistema de entrada

      • Abra la sección Proveedores de datos de entrada, seleccione Agregar proveedor de datos en la parte superior y se agregará un nuevo proveedor de datos al final de la lista.Open the Input Data Providers section, select Add Data Provider at the top, and new data provider will be added at the end of the list. Abra el nuevo proveedor de datos y establezca El tipo en Microsoft.MixedReality.Toolkit. XRSDK. Oculus > OculusXRSDKDeviceManager.Open the new data provider and set the Type to Microsoft.MixedReality.Toolkit.XRSDK.Oculus > OculusXRSDKDeviceManager.

      Agregar proveedor de datos XRSDK de Oculus

  1. Configuración del perfil para usar el proveedor de datos del SDK de Oculus XRConfigure your profile to use the Oculus XR SDK Data Provider
    • Si no pretende modificar los perfiles de configuraciónIf not intending to modify the configuration profiles

    • De lo contrario, siga estos pasos:Otherwise follow the following:

      • Seleccione el objeto de juego MixedRealityToolkit en la jerarquía y seleccione Copiar y personalizar para clonar el perfil de realidad mixta predeterminado.Select the MixedRealityToolkit game object in the hierarchy and select Copy and Customize to clone the default mixed reality profile.

      Clonar perfil

      • Seleccione el perfil de configuración de entrada.Select the Input Configuration Profile.

      Perfil de configuración de entrada

      • Seleccione Clonar en el perfil del sistema de entrada para habilitar la modificación.Select Clone in the input system profile to enable modification.

      Clonar perfil del sistema de entrada

      • Abra la sección Proveedores de datos de entrada, seleccione Agregar proveedor de datos en la parte superior y se agregará un nuevo proveedor de datos al final de la lista.Open the Input Data Providers section, select Add Data Provider at the top, and new data provider will be added at the end of the list. Abra el nuevo proveedor de datos y establezca El tipo en Microsoft.MixedReality.Toolkit. XRSDK. Oculus > OculusXRSDKDeviceManager.Open the new data provider and set the Type to Microsoft.MixedReality.Toolkit.XRSDK.Oculus > OculusXRSDKDeviceManager.

      Agregar proveedor de datos XRSDK de Oculus

  1. El proveedor de datos del SDK de Oculus XR incluye un prefab de cámara OVR que configura automáticamente el proyecto con un equipo de cámara OVR y las manos de OVR para enrutar correctamente la entrada.The Oculus XR SDK Data Provider includes an OVR Camera Rig Prefab which automatically configures the project with an OVR Camera Rig and OVR Hands to properly route input. La adición manual de un dispositivo de cámara OVR a la escena requerirá la configuración manual de la configuración y la entrada.Manually adding an OVR Camera Rig to the scene will require manual configuration of settings and input.

Compilación e implementación del proyecto en Oculus QuestBuild and deploy your project to Oculus Quest

  1. Conexión de Oculus Quest a través de un cable USB 3.0 -> USB CPlug in your Oculus Quest via a USB 3.0 -> USB C cable

  2. Vaya a File > Build ConfiguraciónNavigate to File > Build Settings

  3. Cambio de la implementación a AndroidChange the deployment to Android

  4. Asegúrese de que Oculus Quest está seleccionado como el dispositivo de ejecución aplicable.Ensure that the Oculus Quest is selected as the applicable run device

    Oculus Run Device

  5. Seleccione Compilar y ejecutar.Select Build and Run

    • Es probable que se encuentre con el siguiente conjunto de errores de compilación al seleccionar Compilar y ejecutar la primera vez.You will likely encounter the following set of build errors when you select Build and Run the first time. Debería poder realizar la implementación correctamente al seleccionar Compilar y ejecutar de nuevo.You should be able to successfully deploy upon selecting Build and Run again.

    Errores de compilación esperados de Oculus

  6. Acepte el símbolo del sistema Permitir depuración USB desde dentro de la búsqueda.Accept the Allow USB Debugging prompt from inside the quest

  7. Ver la escena dentro de la misión de OculusSee your scene inside the Oculus Quest

Quitar la integración de Oculus del ProjectRemoving Oculus Integration from the Project

  1. Vaya a la Mixed Reality Toolkit > Oculus > Módulos de Unity de integración de Oculus independientes  Oculus Separation AsmdefNavigate to the Mixed Reality Toolkit > Oculus > Separate Oculus Integration Unity Modules Oculus Separation Asmdef
  2. Deje que Unity se actualice como referencias en Microsoft.MixedReality. Toolkit. Providers.Oculus.asmdef y otros archivos se modifican en este pasoLet Unity refresh as references in the Microsoft.MixedReality.Toolkit.Providers.Oculus.asmdef and other files are modified in this step
  3. Cerrar UnityClose Unity
  4. Cierre Visual Studio, si está abierto.Close Visual Studio, if it's open
  5. Abra Explorador de archivos y vaya a la raíz del proyecto de Unity de MRTK.Open File Explorer and navigate to the root of the MRTK Unity project
  6. Eliminación del directorio UnityProjectName/LibraryDelete the UnityProjectName/Library directory
  7. Eliminación del directorio UnityProjectName/Assets/OculusDelete the UnityProjectName/Assets/Oculus directory
  8. Eliminación del archivo UnityProjectName/Assets/Oculus.metaDelete the UnityProjectName/Assets/Oculus.meta file
  9. Volver a abrir UnityReopen Unity

Errores comunesCommon errors

Misión no reconocida por UnityQuest not recognized by Unity

Asegúrese de que las rutas de acceso de Android están configuradas correctamente.Make sure your Android paths are properly configured. Si sigue teniendo problemas, siga esta guía.If you continue to encounter problems, follow this guide

Editar > preferencias > herramientas externas > AndroidEdit > Preferences > External Tools > Android

Configuración de herramientas de Android