Microsoft Mixed Reality Toolkit 2.7 Release Notes
What's new in 2.7.2
Fixed a UPM package dependency issue
There is an issue with MRTK 2.7.1 UPM packages where the dependencies were not set up correctly. The issue caused the Mixed Reality Feature Tool to fail to import MRTK 2.7.1 packages properly. The issue is now resolved in 2.7.2. There is no code change in this version compared to 2.7.1.
What's new in 2.7.1
Mixed Reality >
Toolkit menu now contains a
Show version... entry that examines the Mixed Reality Toolkit Foundation package to determine the version of MRTK that is being used by the project.
If MRTK was cloned from the GitHub repository, the version information will not have been set.
Starting with MRTK 2.7.1, the authors list file is included in the Mixed Reality Toolkit Foundation package.
Integrated OpenXR project setup into the Configurator setup flow
Starting with MRTK 2.7.1, users of the Mixed Reality OpenXR plugin will receive instructions on how to set up that plugin with MRTK. There is an option for users targeting HoloLens 2 to apply recommended settings automatically.
Notable Bugfixes and Changes
- Marked Unity Joystick Manager as supported on XR SDK pipeline #9954, #9994
- Added checks to interactable inspector code to prevent null errors #9943
- Add OpenXR mesh provider to pulse shader example scene #9902
- Restore hand physics profile to example scene #9915
- Some cleanup to the HandConstraint* scripts #9935
- Fixed some bugs affecting creating and cloning profiles #9982
What's new in 2.7.0
OpenXR is now officially supported in MRTK
As the new OpenXR plugins are becoming more and more mature MRTK now officially supports OpenXR. Compared to previous releases we added the following capabilities to projects using OpenXR:
- Support for the system-provided motion controller model
- Support for WinMR gestures (select, hold, manipulation and navigation) #9843
- Support for controller haptics
- Support for articulated hand mesh on HoloLens 2
- Support for Spatial Mapping on HoloLens 2 #9567, #9827
- Support for Scene Understanding on HoloLens 2 #9744
If you are targeting HoloLens 2 or Windows Mixed Reality headsets via OpenXR please make sure to install/update to Mixed Reality OpenXR plugin version 0.9.5 or later via Mixed Reality Feature Tool, otherwise you might miss some of the improvements above.
Legacy XR and XR SDK Data Providers can now be used within the same profile
Data providers will now also only be loaded when the appropriate pipeline is selected, allowing both Legacy XR and XR SDK data providers to co-exist within the same profile. To accommodate this, Legacy XR and XR SDK Data Providers are now organized under different tabs within the profile view, helping users determine whether they have the correct profile for their targeted XR pipeline.
To accommodate this, null data providers will now no longer be loaded and displayed in the profile inspector. Users can toggle
Show null data providers in the profile inspector
under Edit -> Project Settings -> Mixed Reality Toolkit to debug unexpected behaviors with missing data providers.
Added Experience Settings and an associated Mixed Reality Scene Content behavior
If user's previous Experience Scale settings do not match the new Experience Settings Profile, they will be prompted to correct it in the inspector
The Redesigned Configurator now guides the user through the setup process
The new MRTK configurator provides users step-by-step guidance to properly configure the project for XR development and use with MRTK. It covers the selection of XR pipeline, getting the platform specific plugins, importing TextMeshPro, displaying the examples (when using UPM) and other previously included recommended settings for the project.
Graduated Teleport Hotspot
A new teleport hotspot component has been graduated. You can add a teleport hotspot to your GameObject to ensure that the user is in a certain position and orientation when they teleport to that location.
The dwell feature and example is now graduated from experimental. New examples of volumetric HoloLens 2 style buttons are included in the sample scene.
Added support for Leap Motion Unity Modules version 4.6.0, 4.7.0, 4.7.1 and 4.8.0
Big thanks to @jackyangzzh for contributing the new LeapMotionOrientationExample scene!
Targeted speech events raised no longer restricted to gaze pointers
Previously, targeted speech events could only be raised on objects which were focused on with the gaze pointer. Now, objects can receive speech events if they are focused by any pointer.
Ported TextToSpeech from HTK to MRTK
The beloved TextToSpeech script is now finally available in MRTK to help you generate speech from text on the UWP platform using
SpeechSynthesizer. Also added a sample scene to demonstrate the feature.
Support for the system-provided motion controller model on OpenXR
Added support, both in-editor and at runtime, for the system-provided motion controller model on OpenXR.
Support for HoloLens 2 articulated hand mesh on OpenXR
Support for controller haptics across legacy WMR, Windows XR Plugin, and OpenXR
Added support for controller haptics across legacy WMR, Windows XR Plugin, and OpenXR. #9735
Support for eye tracking on Windows XR Plugin
Added support for eye gaze when using Windows XR Plugin minimum versions of 2.7.0 (Unity 2019), 4.4.2 (Unity 2020), and 5.2.2 (Unity 2021). #9609
Notable Bugfixes and Changes
- Pinch detection made smoother. It is now harder to accidentally drop the pinch gesture. #9576
- Objects with the Object Manipulator component now consistently maintain velocity on release when the flag is set. #9733
- Back-strafing now checks for a floor, helping prevent situations where the camera can clip into the environment or where the user is left hovering over empty space.#9697
- IsNearObject is now a virtual property, allowing more flexibility when extending the sphere or poke pointer. #9803
- Buttons now display the proper keyword when showing the available speech command. #9824
- Oculus Controllers now uses it's own standalone visualizer, preventing the MRTK visualization from clashing with the Oculus Integration Package's visualization. #9589
- Keyboard related scripts have been changed to align with the behavior in latest Unity versions (2019.4.25+ & 2020.3.2+). As of the release there is still an auto-completion bug and a TMP Input Field bug (both are external to MRTK) impacting HoloLens. For more information please see #9056 and #9724.
- Improved the performance of Scrolling Object Collection. Also fixed an issue causing GameObject within the collection to lose material when duplicated. #9813, #9718
- In the Scene Understanding demo script, added the
GetSceneObjectsOfTypefunction to retrieve all observed scene object of a certain kind. #9524, #9744
- In command line build tool, only scenes specified by the
sceneListFileflags (when any flag is present) will be included in the build. #9695
- In build tool, there is a new option to specify a path to
nuget.exeand use that to perform package restore instead of using
msbuild(the default option). #9556
- Fixed issue where using Windows XR Plugin could result in stale hand joints and doubled hand meshes. #9890
- Fixed issue where using Windows XR Plugin's automatic remoting feature led to missing input and interactions. #9868
- Fixed issue where the BuildDeployWindow would try to query an invalid reg key for the Windows SDK path. #9664
- MRTK's glTF importers are now optional. If multiple glTF importers are present, MRTK's can be disabled by adding
MRTK_GLTF_IMPORTER_OFFto the custom scripting define symbols. #9658
- Fixed issue where the Knuckles controllers on OpenVR weren't being detected properly. #9881
- Reduce the number of per-frame allocations when visualizing the hand mesh #9756
- Added a menu item to launch the MRTK Examples package (in Unity Package Manager) to make it easier to import samples #9798
- Reduced the number of load-time warnings when using Unity 2020.3.
- Added Build Window feature documentation: Visit the page
Audio demos are missing an asmdef file (UPM package)
When importing MRTK via the Mixed Reality Feature Tool, samples and demos are added to the project using the Unity Package Manager UI. After importing the Audio demos, the
WindowsMicrophoneStreamDemo.unity scene will not behave properly. This is a result of a missing .asmdef file for the sample.
To work around this issue, please perform the following steps:
- Copy Library/PackageCache/com.microsoft.mixedreality.toolkit.examples@[...]/MRTK.Examples.asmdef into your "Assets/Samples/Mixed Reality Toolkit Examples" folder
- Rename the copied file to Examples
- Open the Examples file
- In the Name box, replace the contents with Examples
- Click Apply
- Build and deploy
This issue will be fixed in an upcoming MRTK release.
MRTK build window triggers indefinite "Importing assets" dialog in Unity 2020.3
There is a known issue with the MRTK build window on Unity 2020.3 where after successfully performing a UWP build, the "Importing assets" dialog does not complete. This issue is being investigated in partnership with Unity.
Text Mesh Pro Canvas Renderer warnings in Unity 2020
The following warning is logged in most MRTK example scenes while using Unity 2020:
Please remove the CanvasRenderer component from the [TextMeshPro] GameObject as this component is no longer necessary.