Paquetes MRTK: MRTK2
Mixed Reality Toolkit (MRTK) es una colección de paquetes que permiten el desarrollo de aplicaciones de Mixed Reality multiplataforma al proporcionar compatibilidad con hardware y plataformas de Mixed Reality.
MRTK está disponible como paquetes de recursos (.unitypackage) y a través del Administrador de paquetes de Unity.
Paquetes de activos
El recurso MRTK (.unitypackage) se puede descargar desde GitHub.
Algunas de las ventajas de usar paquetes de recursos son:
- Disponible para Unity 2018.4 y versiones posteriores
- Fácil de realizar cambios en MRTK
- MRTK está en la carpeta Assets
Algunos de los desafíos son:
- MRTK forma parte de la carpeta Assets del proyecto, lo que conduce a
- Proyectos más grandes
- Tiempos de compilación más lentos
- Sin administración de dependencias
- Los clientes deben resolver las dependencias del paquete manualmente.
- Proceso de actualización manual
- Varios pasos
- Actualizaciones de control de código fuente grandes (más de 3000 archivos)
- Riesgo de perder los cambios realizados en MRTK
- Importar el paquete de ejemplos normalmente significa incluir todos los ejemplos
Los paquetes disponibles son:
Estos paquetes se publican y admiten por Microsoft desde el código fuente en GitHub.
Paquete foundation
Mixed Reality Toolkit Foundation es el conjunto de código que permite a la aplicación aprovechar la funcionalidad común en plataformas de realidad mixta.
Paquete de MRTK FoundationEl paquete de MRTK Foundation contiene lo siguiente.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Core | Definiciones de interfaz y tipo, clases base, sombreador estándar. | |
MRTK/Core/Providers | Proveedores de datos independientes de la plataforma | |
Manos | Compatibilidad con clases base y servicios para el seguimiento de manos. | |
InputAnimation | Compatibilidad con la grabación del movimiento de la cabeza y los datos de seguimiento de manos. | |
InputSimulation | Compatibilidad con la simulación en el editor de la entrada de mano y ojo. | |
ObjectMeshObserver | Observador de reconocimiento espacial con un modelo 3D como datos. | |
UnityInput | Dispositivos de entrada comunes (joystick, mouse, etc.) implementados a través de la API de entrada de Unity. | |
MRTK/Providers | Proveedores de datos específicos de la plataforma | |
LeapMotion | Compatibilidad con el controlador UltraLeap Leap Motion. | |
OpenVR | Compatibilidad con dispositivos OpenVR. | |
Oculus | Compatibilidad con dispositivos De Framework, como Quest. | |
UnityAR | (Experimental) Proveedor de configuración de cámara que habilita el uso de MRTK con dispositivos AR móviles. | |
WindowsMixedReality | Compatibilidad con dispositivos Windows Mixed Reality, incluidos Microsoft HoloLens y cascos envolventes. | |
Windows | Compatibilidad con api específicas de Microsoft Windows, por ejemplo, voz y dictado. | |
XR SDK | (Experimental) Compatibilidad con el nuevo marco XR de Unity en Unity 2019.3 y versiones posteriores. | |
MRTK/SDK | ||
Habilitación de características | Características experimentales, incluidos sombreadores, controles de interfaz de usuario y administradores de sistemas individuales. | |
Características | Funcionalidad que se basa en el paquete Foundation. | |
Perfiles | Perfiles predeterminados para los servicios y sistemas de Microsoft Mixed Reality Toolkit. | |
StandardAssets | Activos comunes; modelos, texturas, materiales, etc. | |
MRTK/SceneSystemResources | Recursos y recursos usados por el sistema de escenas | |
MRTK/Services | ||
BoundarySystem | Compatibilidad con límites de VR de implementación del sistema. | |
CameraSystem | Sistema que implementa la configuración y administración de la cámara. | |
DiagnosticsSystem | Sistema que implementa en diagnósticos de aplicaciones, por ejemplo, un generador de perfiles visuales. | |
InputSystem | Sistema que proporciona compatibilidad para acceder y controlar la entrada del usuario. | |
SceneSystem | Sistema que proporciona compatibilidad con aplicaciones de varias escenas. | |
SpatialAwarenessSystem | Sistema que proporciona compatibilidad con el reconocimiento del entorno del usuario. | |
TeleportSystem | Sistema que proporciona soporte para el teletransporte (moverse sobre la experiencia en saltos). | |
MRTK/StandardAssets | Sombreador estándar de MRTK, materiales básicos y otros recursos estándar para experiencias de realidad mixta |
Paquete de extensiones
El paquete opcional Microsoft.MixedRealityToolkit.Unity.Extensions incluye servicios adicionales que amplían la funcionalidad de Microsoft Mixed Reality Toolkit.
Nota:
El paquete de extensiones requiere Microsoft.MixedRealityToolkit.Unity.Foundation.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Extensions | ||
HandPhysicsService | Servicio que agrega compatibilidad física a las manos articuladas. | |
LostTrackingService | Servicio que simplifica el control de la pérdida de seguimiento en dispositivos Microsoft HoloLens. | |
SceneTransitionService | Servicio que simplifica la adición de transiciones de escena suaves. |
Paquete de herramientas
El paquete opcional Microsoft.MixedRealityToolkit.Unity.Tools incluye herramientas útiles que mejoran la experiencia de desarrollo de realidad mixta con Microsoft Mixed Reality Toolkit. Estas herramientas se encuentran en el menú Utilidades del kit > de herramientas de Mixed Reality en el Editor de Unity.
Nota:
El paquete de herramientas requiere Microsoft.MixedRealityToolkit.Unity.Foundation.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Tools | ||
BuildWindow | Herramienta que ayuda a simplificar el proceso de creación e implementación de aplicaciones para UWP. | |
DependencyWindow | Herramienta que crea un gráfico de dependencias de recursos en un proyecto. | |
ExtensionServiceCreator | Asistente para ayudar a crear servicios de extensión. | |
MigrationWindow | Herramienta que ayuda a actualizar código que usa componentes de MRTK en desuso. | |
OptimizeWindow | Utilidad para ayudar a automatizar la configuración de un proyecto de realidad mixta para obtener el mejor rendimiento en Unity. | |
ReserializeAssetsUtility | Proporciona compatibilidad con la reserialización de archivos específicos de Unity. | |
RuntimeTools/Tools/ControllerMappingTool | Utilidad que permite a los desarrolladores determinar rápidamente las asignaciones de Unity para controladores de hardware. | |
Captura de pantallaUtility | Habilita la captura de imágenes de aplicación en el editor de Unity. | |
TextureCombinerWindow | Utilidad para combinar texturas gráficas. | |
Cuadro de herramientas | Interfaz de usuario que facilita la detección y el uso de componentes de experiencia de usuario de MRTK. |
Paquete de utilidades de prueba
El paquete opcional Microsoft.MixedRealityToolkit.TestUtilities es una colección de scripts auxiliares que permiten a los desarrolladores crear fácilmente pruebas en modo de reproducción. Estas utilidades son especialmente útiles para los desarrolladores que crean componentes de MRTK.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Tests | ||
TestUtilities | Métodos para simplificar la creación de pruebas en modo de reproducción, incluidas las utilidades de simulación de manos. |
Paquete de ejemplos
El paquete de ejemplos contiene demostraciones, scripts de ejemplo y escenas de ejemplo que ejercen la funcionalidad en el paquete de base. Este paquete contiene la escena HandInteractionExample (que se muestra a continuación) que contiene objetos de ejemplo que responden a varios tipos de entrada de mano (articulados y no articulados).
Este paquete también contiene demostraciones de seguimiento ocular, que se documentan aquí
Por lo general, cualquier característica nueva de MRTK debe contener un ejemplo correspondiente en el paquete de ejemplos, aproximadamente siguiendo la misma estructura y ubicación de carpetas.
Nota:
El paquete de ejemplos requiere Microsoft.MixedRealityToolkit.Unity.Foundation.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Ejemplos | ||
Demostraciones | Escenas simples que ilustran una o dos características relacionadas. | |
Habilitación de características | Escenas de demostración que ilustran las características experimentales. | |
StandardAssets | Recursos comunes compartidos por varias escenas de demostración. |
Administrador de paquetes de Unity
Para las experiencias que se crean con Unity 2019.4 y versiones más recientes, MRTK está disponible a través de unity Administrador de paquetes.
Algunas de las ventajas de usar paquetes de recursos son:
- Proyectos más pequeños
- Soluciones de Visual Studio más limpias
- Menos archivos para proteger (MRTK es una referencia simple en el
Packages/manifest.json
archivo)
- Compilación más rápida
- Unity no necesita volver a compilar MRTK durante la compilación
- Resolución de dependencias
- Los paquetes MRTK necesarios se instalan automáticamente al especificar paquetes con dependencias.
- Actualización sencilla a las nuevas versiones de MRTK
- Cambiar la versión en el
Packages/manifest.json
archivo
- Cambiar la versión en el
Algunos de los desafíos son:
- MRTK es inmutable
- No se pueden realizar cambios sin quitarlos durante la resolución del paquete
- MRTK no admite paquetes UPM con Unity 2018.4
Paquete foundation
El paquete de base (com.microsoft.mixedreality.toolkit.foundation
) forma la base del kit de herramientas de Mixed Reality.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Core | Definiciones de interfaz y tipo, clases base, sombreador estándar. | |
MRTK/Core/Providers | Proveedores de datos independientes de la plataforma | |
Manos | Compatibilidad con clases base y servicios para el seguimiento de manos. | |
InputAnimation | Compatibilidad con la grabación del movimiento de la cabeza y los datos de seguimiento de manos. | |
InputSimulation | Compatibilidad con la simulación en el editor de la entrada de mano y ojo. | |
ObjectMeshObserver | Observador de reconocimiento espacial con un modelo 3D como datos. | |
UnityInput | Dispositivos de entrada comunes (joystick, mouse, etc.) implementados a través de la API de entrada de Unity. | |
MRTK/Providers | Proveedores de datos específicos de la plataforma | |
LeapMotion | Compatibilidad con el controlador UltraLeap Leap Motion. | |
OpenVR | Compatibilidad con dispositivos OpenVR. | |
Oculus | Compatibilidad con dispositivos De Framework, como Quest. | |
UnityAR | (Experimental) Proveedor de configuración de cámara que habilita el uso de MRTK con dispositivos AR móviles. | |
WindowsMixedReality | Compatibilidad con dispositivos Windows Mixed Reality, incluidos Microsoft HoloLens y cascos envolventes. | |
Windows | Compatibilidad con api específicas de Microsoft Windows, por ejemplo, voz y dictado. | |
XR SDK | (Experimental) Compatibilidad con el nuevo marco XR de Unity en Unity 2019.3 y versiones posteriores. | |
MRTK/SDK | ||
Habilitación de características | Características experimentales, incluidos sombreadores, controles de interfaz de usuario y administradores de sistemas individuales. | |
Características | Funcionalidad que se basa en el paquete Foundation. | |
Perfiles | Perfiles predeterminados para los servicios y sistemas de Microsoft Mixed Reality Toolkit. | |
StandardAssets | Activos comunes; modelos, texturas, materiales, etc. | |
MRTK/Services | ||
BoundarySystem | Compatibilidad con límites de VR de implementación del sistema. | |
CameraSystem | Sistema que implementa la configuración y administración de la cámara. | |
DiagnosticsSystem | Sistema que implementa en diagnósticos de aplicaciones, por ejemplo, un generador de perfiles visuales. | |
InputSystem | Sistema que proporciona compatibilidad para acceder y controlar la entrada del usuario. | |
SceneSystem | Sistema que proporciona compatibilidad con aplicaciones de varias escenas. | |
SpatialAwarenessSystem | Sistema que proporciona compatibilidad con el reconocimiento del entorno del usuario. | |
TeleportSystem | Sistema que proporciona soporte para el teletransporte (moverse sobre la experiencia en saltos). |
Dependencias:
- Recursos estándar (
com.microsoft.mixedreality.toolkit.standardassets
)
Recursos estándar
El paquete de recursos estándar (com.microsoft.mixedreality.toolkit.standardassets)
es una colección de componentes que se recomiendan para todas las experiencias de realidad mixta, entre las que se incluyen:
- Sombreador estándar de MRTK
- Materiales básicos con el sombreador MRTK Standard
- Archivos de audio
- Fuentes
- Texturas
- Iconos
Nota:
Para evitar cambios importantes en función de las definiciones de ensamblado, los scripts usados para controlar algunas características del sombreador estándar de MRTK no se incluyen en el paquete de recursos estándar. Estos scripts se pueden encontrar en el paquete foundation de la MRTK/Core/Utilities/StandardShader
carpeta .
Dependencias: ninguna
Paquetes de extensión
El paquete de extensiones opcionales (com.microsoft.mixedreality.toolkit.extensions)
contiene componentes adicionales que expanden la funcionalidad de MRTK.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Extensions | ||
HandPhysicsService | Servicio que agrega compatibilidad física a las manos articuladas. | |
LostTrackingService | Servicio que simplifica la entrega de la pérdida de seguimiento en dispositivos Microsoft HoloLens. | |
SceneTransitionService | Servicio que simplifica la adición de transiciones de escena suaves. | |
Muestras~ | Una carpeta oculta (en el Editor de Unity) que contiene las escenas de ejemplo y los recursos. |
Puede encontrar más detalles sobre el proceso de uso de paquetes que contienen proyectos de ejemplo en el artículo Mixed Reality Toolkit y Unity Administrador de paquetes.
Dependencias:
- Fundación (
com.microsoft.mixedreality.toolkit.foundation
)
Paquete de herramientas
El paquete de herramientas opcional (com.microsoft.mixedreality.toolkit.tools)
contiene herramientas útiles para crear experiencias de realidad mixta. En general, estas herramientas son componentes del editor y su código no se envía como parte de una aplicación.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Tools | ||
BuildWindow | Herramienta que ayuda a simplificar el proceso de creación e implementación de aplicaciones para UWP. | |
DependencyWindow | Herramienta que crea un gráfico de dependencias de recursos en un proyecto. | |
ExtensionServiceCreator | Asistente para ayudar a crear servicios de extensión. | |
MigrationWindow | Herramienta que ayuda a actualizar código que usa componentes de MRTK en desuso. | |
OptimizeWindow | Utilidad para ayudar a automatizar la configuración de un proyecto de realidad mixta para obtener el mejor rendimiento en Unity. | |
ReserializeAssetsUtility | Proporciona compatibilidad con la reserialización de archivos específicos de Unity. | |
RuntimeTools/Tools/ControllerMappingTool | Utilidad que permite a los desarrolladores determinar rápidamente las asignaciones de Unity para controladores de hardware. | |
ScreenshotUtility | Habilita la captura de imágenes de aplicación en el editor de Unity. | |
TextureCombinerWindow | Utilidad para combinar texturas gráficas. | |
Cuadro de herramientas | Interfaz de usuario que facilita la detección y el uso de componentes de experiencia de usuario de MRTK. |
Dependencias:
- Fundación (
com.microsoft.mixedreality.toolkit.foundation
)
Paquete de utilidades de prueba
El paquete opcional de utilidades de prueba (com.microsoft.mixedreality.toolkit.testutilities
) contiene una colección de scripts auxiliares que permiten a los desarrolladores crear fácilmente pruebas en modo de reproducción. Estas utilidades son especialmente útiles para los desarrolladores que crean componentes de MRTK.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Tests | ||
TestUtilities | Métodos para simplificar la creación de pruebas en modo de reproducción, incluidas las utilidades de simulación de manos. |
Dependencias:
- Fundación (
com.microsoft.mixedreality.toolkit.foundation
)
Paquete de ejemplos
El paquete de ejemplos (com.microsoft.mixedreality.toolkit.examples
) está estructurado para permitir a los desarrolladores importar solo los ejemplos de interés.
Puede encontrar más detalles sobre el proceso de uso de paquetes que contienen proyectos de ejemplo en el artículo Mixed Reality Toolkit y Unity Administrador de paquetes.
Carpeta | Componente | Descripción |
---|---|---|
MRTK/Ejemplos | ||
Muestras~ | Una carpeta oculta (en el Editor de Unity) que contiene las escenas de ejemplo y los recursos. | |
StandardAssets | Recursos comunes compartidos por varias escenas de demostración. |
Dependencias:
- Fundación (
com.microsoft.mixedreality.toolkit.foundation
) - Extensiones (
com.microsoft.mixedreality.toolkit.extensions
)