Updated: Oct 26, 2020
Mixed Reality ToolKit (MRTK) is a non-proprietary, asynchronous platform development kit for fabricating Mixed Reality applications. MRTK provides multiple platform input systems, fundamental components, and common constituents for spatial interactions and develops Mixed Reality-based applications.
MRTK mainly focuses on turning down the barriers between developers and amateurs; it provides a universal platform for developing applications based on this domain effortlessly. There are different versions of MRTK, and the latest version, i.e., MRTK version 2.4.0, has incorporated many state of-the-art features that are utilized to develop a more composite application. Some of the striking features of MRTK are as follows:
1. MODULAR
MRTK is built autonomously, wherein the components are included independently, and hence only the required modules can be incorporated by the Developer into the development process. Due to this, you can conveniently reduce the space consumed by your project, making it easier to manage. MRTK is interface driven and possesses scriptable objects; the Developer can quickly assimilate his objects and modify the existing objects provided by the ToolKit according to his requirement.
2. CROSS-PLATFORM
The cross-platform feature is another feature that makes MRTK more accessible and user-friendly. It has certain constraints as it does not promise to be compatible in all the platforms, but it makes sure that the code is not broken or tampered with when the Developer builds it on a different platform. MRTK has extensible framework where developers can swap core components. This feature makes MRTK more robust and malleable. Considering the modular design, MRTK is set on the right path of harmony in various platforms like ARCore, ARKit, and OpenVR.
3. PERFORMANT
The performance of MRTK is given the utmost importance. The feasibility factor of MRTK must be high, as it should not compromise on the account. MRTK supports numerous platforms like:
- Microsoft HoloLens
- Microsoft HoloLens 2
- Windows Mixed Reality headsets
- OpenVR headsets (HTC Vive / Oculus Rift)
- Ultraleap Hand Tracking
- Mobile devices, such as iOS and Android.
4. ONE TOOLKIT FOR NUMEROUS SPECTATORS
MRTK is not built for a single group of an audience; it is made to be accessible for people ranging from amateur to professionals in this field. Some of the codes and APIs have been optimized to be running on various platforms. MRTK has requirements to scale across AR and VR smoothly. The applications built must be able to retreat when deployed on HoloLens 2 or HoloLens 1 smoothly. It must be simple to build applications based on Mixed Reality. The main Goal of MRTK is to provide long term support to the developer in the process of application development. Mixed Reality ToolKit comprises of the following components:
i. INPUT SYSTEM
Input plays a vital role in a Mixed Reality application. The developer must set up the scene using an appropriate input module, camera, cursor, or motion controllers to make the environment more interactive.
ii. INTERACTABLE OBJECT
Interactable object examples show how an object can be made interactable and respond to the user’s inputs. Inputs may vary from observation, targeted, and resize. The items can vary immensely based on their needs. Visual feedback is used to check which object is interactable and which is not.
iii. BOUNDING BOX AND APP BAR
The bounding box is one of the standard interfaces used to manipulate and tamper with the objects in Windows Mixed Reality. The bounding box is a useful UI designed to rotate and scale the objects virtually. The app bar comprises of circumstantial buttonsattached to the virtual items. By default, it displays three buttons; namely, Hide, Adjust, and Remove. The adjust button is used to scale and change the dimensions of the object on the screen. As the name suggests, the Remove button removes the entire item from the screen. Lastly, the Hide button hides that particular object from the screen. A developer can add custom made buttons to the series of the button on the App bar.
iv. TWO HAND MANIPULATION
Two hand manipulation allows the user to use his hands to manipulate the object. Users can Tap, Hold, Drag, Maximize, Minimize, and move by tap using both the hands. This system also works with motion controllers. The developer can spontaneously manipulate objects.
v. OBJECT COLLECTION
With Object Collection, one can arrange an array of game objects in the 3D space. The surface type, row, column, number, and other dimensional support are provided to the game object. In this way, the developer can construct a three-Dimensional grid system.
vi. SOLVER SYSTEM
This system allows you to amalgamate all the positional behaviors of the objects and run them accordingly. One good example is the Start Menu, which possesses multiple actions like Tag-along, Constant View size, and Surface Magnetism. When the Start Menu collides with any object in the real world, it allows that object. It also continually resizes the items to maintain a constant size.
vii. VOICE COMMAND
The most connate way of interacting with any object is through voice. It diminishes both the time consumption and effort of the user. Windows Mixed Reality Shell provides system-level commands like ‘Select,’ ‘Close,’ ‘Move This,’ and ‘Face Me.’
viii. SPATIAL UNDERSTANDING
The most exhilarating proficiency of HoloLens is the spatial understanding. This feature helps the user to detect obstacles and analyze the environment. It also helps in identifying real-world objects and surfaces like – Floor, Ceilings, Walls, and rigid platforms. After doing this, it then places the realistic holograms onto the scene. MRTK has revolutionized the process of developing Mixed Reality Applications. Peoplefrom all walks of life can use this Toolkit effortlessly.