Skip to content

Microsoft Mixed Reality Toolkit v2.0.0 RC2

Pre-release
Pre-release

Choose a tag to compare

@wiwei wiwei released this 12 Jun 08:47
f3a9791

MRTK v2 Release Candidate 2 provides new stabilization fixes and a few additional features.

Getting started

To help you get started using MRTK v2, please see the Documentation Portal. This is the place to learn to use MRTK, and deep dive into MRTK architecture. We have prepared an initial set of documentation to get you started, but we would also like to hear from you if there's anything else you'd like to see added. If you are up to the challenge, help us improve the documentation by contributing your change! Learn how to contribute on our GitHub Wiki, please follow the documentation guide when you make changes.

What's new in RC2

Default HoloLens 2 Profile

We have added a new profile for HoloLens 2 development that includes some of the recommended MRTK configurations for best performance. #4780 #4442

Please note that this profile will only contain MRTK specific settings, you will still need to update Unity settings using recommendations in this doc.

Improved porting experience from HTK to MRTK v2

This change enables side-by-side import of HTK and MRTK to make porting to MRTK v2 easier.

Experimental Attribute

Some features the MRTK team works on appear to have a lot of initial value even if we haven’t fully fleshed out the details. For these types of features, we want the community to get a chance to see them early. Because they are early in the cycle, we label them as experimental to indicate that they are still evolving, and subject to change over time. See Experimental Features for more details

Hand-Attached menu (Experimental)

First experimental feature: a hand-attached menu. Please see #4532 for a description.

MRTK Standard Shader works with Unity’s Lightweight Render Pipeline

An upgrade path to allow developers to utilize Unity's Lightweight Scriptable Render Pipeline (LWRP) with MRTK shaders has been added. To perform the MRTK upgrade select: “Mixed Reality Toolkit -> Utilities -> Upgrade MRTK Standard Shader for Lightweight Render Pipeline” For more information please see #4311.

Input Action Handler

Added an input action handler interface to receive action events regardless of the input source. See #4475 for details.

MixedRealityServiceRegistry

Added the static MixedRealityServiceRegistry class to enable acquiring services when using the MixedRealityToolkit object or a custom service registrar. To acquire a service instance from the registry, call the TryGetService method.

IMixedRealityInputSystem inputSystem = null;  
  
if (!MixedRealityServiceRegistry.TryGetService\<IMixedRealityInputSystem\>(out inputSystem))  
{  
   // The input system has not been registered.  
}

MixedRealityPlayspace

Replaced MixedRealityToolkit’s MixedRealityPlayspace property with a static MixedRealityPlayspace class to simplify accessing and transforming the play space in your applications.

IMixedRealityDataProviderAccess

Added the IMixedRealityDataProviderAccess interface to allow applications to request data provider instances from services which utilize data providers. In this release, the input and spatial awareness systems implement the IMixedRealityDataProviderAccess interface.

To acquire a data provider, use the following pattern.

IMixedRealitySpatialAwarenessMeshObserver meshObserver = (SpatialAwarenessSystem as
IMixedRealityDataProviderAccess)?.GetDataProvider\<IMixedRealitySpatialAwarenessMeshObserver\>();  
if (meshObserver != null)  
{  
    // Perform mesh observer operations.  
}

RC1 to RC2 Upgrade Instructions

  1. Delete all MixedRealityToolkit folders from RC1: MixedRealityToolkit, MixedRealityToolkit.Examples, MixedRealityToolkit.Providers, MixedRealityToolkit.SDK, MixedRealityToolkit.Services
  2. Delete your Library folder
  3. Import the RC2 unity pagckages
  4. In your scenes, delete and re-add both the MixedRealityToolkit and MixedRealityPlaySpace objects

RC1 to RC2 Upgrade Known Issues

Pressable buttons may need to be removed and added

After RC1 to RC2 upgrade, pressable buttons may have incorrect planes. To fix, remove and add back the pressable button component.

API Surface Changes

There have been changes to some API surfaces since the last release drop:

MixedRealityToolkit

Removed the MixedRealityPlayspace property. Please use the static MixedRealityPlayspace class to access and transform the play space.

IMixedRealityBoundarySystem

Added BoundaryVisualizationProfile property to enable easy access to the boundary system’s visualization profile.

IMixedRealityDiagnosticsSystem

Added DiagnosticsSystemProfile property to enable easy access to the diagnostics system’s profile.

IMixedRealityInputSystem

Added InputSystemProfile property to enable easy access to the input system’s profile.

IMixedRealitySpatialAwarenessSystem

Added SpatialAwarenessProfile property to enable easy access to the spatial awareness system’s profile.

The GetObserver and GetObservers methods have been marked as obsolete in RC2 and will be removed from a future release of the Mixed Reality Toolkit, To ensure future source code compatibility, please use the MixedRealityDataProviderAccess interface as documented in “What’s new in this update”.

MixedRealityInputSystem

Implements IMixedRealityDataProviderAccess to enable requesting data provider instances.

MixedRealitySpatialAwarenessSystem

Implements IMixedRealityDataProviderAccess to enable requesting data provider instances.

Other issues fixed

Please check out recent PRs for detailed list of changes.

Works with Unity 2018.4 LTS

Works with Unity 2019.1