Mixed Reality Toolkit (MRTK) is an open-source software development kit (SDK) developed by Microsoft in 2016 for the development of mixed reality (MR) and augmented reality (AR) software applications. It consists of a collection of components and features designed to enhance the mixed reality user and developer experiences. The toolkit was originally developed by Microsoft for the release of the HoloLens 1 augmented reality headset, although it supports a variety of platforms.
History Initial release
Known as the "HoloToolkit" (HTK) prior to its initial public release, the software development kit was created to aid in the development of the new Microsoft HoloLens augmented reality device. Mixed Reality Toolkit was released to the public as an open-source SDK in December 2017, one year after the release of Microsoft's HoloLens. The software has had multiple successful generations, including MRTK, MRTK2, and the soon-to-be-released MRTK3.
Layoffs On January 18, 2023, Microsoft announced that it would be laying off approximately 10,000 employees. Days later, these layoffs were found to include the entire team behind the development of MRTK, along with significant portions of the HoloLens hardware team.
Transition to independent governance In September 2023, the Mixed Reality Toolkit transitioned into an independent GitHub organization and is now overseen by a steering committee, which includes representatives from Microsoft, Magic Leap, and Qualcomm. Qualcomm reaffirmed its commitment by ensuring continued support for cross-platform interoperability, particularly through integration with its Snapdragon Spaces XR Developer Platform. The MRTK codebase remains open source and is licensed under the MIT License, enabling community-driven contributions across augmented reality and virtual reality platforms.
Supported platforms Mixed Reality Toolkit is considered to be a platform-agnostic tool as it features a wide variety of supported platforms. This high level of compatibility allows developers to quickly and easily build mixed reality applications tailored to the specific platform they are working on. The following is a list of supported platforms: +Supported PlatformMinimum VersionDevicesOpenXRUnity 2020.3.8+HoloLens 2, Windows Mixed Reality headsets, Meta Quest, Magic Leap 2 SteamVR devicesWindows XR PluginN/AHoloLens, HoloLens 2, Windows Mixed Reality headsetsOculus XR PluginUnity 2019.3+Meta Quest, Meta Quest 2, Meta Quest 3, Meta Quest ProARCore XR PluginN/AAndroid devices (via AR Foundation)ARKit XR PluginN/AiOS devices (via AR Foundation)OpenVRN/AWindows Mixed Reality headsets, HTC Vive, Oculus RiftUltraleap Hand TrackingN/AUltraleap Leap Motion controller Unreal EngineN/AHoloLens2, Windows mixed Reality, SteamVR
Components and features Mixed Reality Toolkit is equipped with a range of components and features that allow developers to create immersive mixed reality applications. These provide developers with a broad range of tools and technologies, including low-level APIs, and high-level development frameworks. These components and features are designed to be used in combination with additional software libraries to create engaging and interactive mixed reality experiences. +MRTK primary feature areasNameDescriptionInput SystemProvides developers with the ability to read and handle device-level input events from a wide range of sourcesHand Tracking (HoloLens 2)Enables users to control their HoloLens 2 device with their hands Eye Tracking (HoloLens 2)Interprets user eye movements to provide accurate interactions ProfilesConfigurable profiles used to set up and manage the toolkit in each sceneHand Tracking (Ultraleap)Enables users to control their device by interfacing with the Leap Motion Data Provider UI ControlsPre-made UI components used to quickly create user interfaces SolversComponents to solve complex problems in mixed reality, such as object placement and 3D manipulation Multi-Scene ManagerSystem for managing multiple scenes in mixed reality, including scene loading, unloading, and transition effects Spatial AwarenessDetects physical environment elements to enhance user experience and interactionsDiagnostic ToolInterface which provides critical runtime verification data to simplify system debugging and analysisMRTK Standard ShaderShader system designed to implement high quality, yet performant, visuals on mixed reality devices Speech & DictationUtilizes speech recognition and natural language processing to interpret user keywords and commandsBoundary SystemDefines the boundaries of a user's area for increased safety and awarenessIn-Editor SimulationInterface designed to test a range of MRTK interactions within the editor without creating a new buildExperimental FeaturesFeatures currently in development or unfinished, which may not have been thoroughly tested MRTK contains UX building block components, which include buttons, object manipulators, system keyboards, object collections, and more. These tools are provided to developers with the intention of simplifying the development process and encouraging innovation in mixed reality.
See also Augmented reality HoloLens 2 Microsoft HoloLens Mixed reality OpenXR Virtual reality Windows Mixed Reality
References
External links MRTK2-Unity Developer Dokumentation - MRTK 2 (Microsoft Learn)