MixedReality.Toolkit Namespace
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Assembly |
Defines extension methods for the Assembly type. |
Axis |
Extension methods specific to the AxisFlags enumeration. |
Base |
Base abstract class for all profiles. |
Base |
The base class that all subsystem configuration data inherits from. |
Bounds |
Extensions for Unity's Bounds struct. |
Camera |
Extension methods for the Unity's Camera class |
Camera |
Camera extension methods to test if colliders are within camera's FOV. Uses caching to improve performance and ensure values are only computed once per frame. |
Camera |
Class that contains settings which are applied to CameraSettingsManager. |
Camera |
Class that applies the appropriate camera settings based on the display type. |
Class |
This profile typically will become part of a scriptable object to provide a series of mappings between UX elements and the data and theme key paths and data sources that will service them, for a specific C# class that implements the IDataConsumerConfiguration interface. Note that only the class name is required. The bindings can essentially be anything that
that specific class knows how to consume. The majority of |
Color |
Utilities for manipulating and interpolating between colors and gradients. |
Component |
A static helper class which caches instances of a component of type T. This is called in place of calling FindFirstObjectByType and FindObjectsByType to improve performance. |
Component |
Extensions methods for the Unity Component class. This also includes some component-related extensions for the GameObject class. |
Controller |
A basic convenience registry allowing easy reference to controllers. |
Data |
This profile can be used to configure data and theme binding settings for a themed UX element. |
Draw |
Conditionally draws a property or field. |
Draw |
A custom property drawer for fields decorated with the DrawIfAttribute attribute. |
Editable |
Attribute to enable an inspector checkbox for toggling the state at edit-time. Mostly used for Toggle state. |
Enumerable |
Extension methods to simplify working with IEnumerable collections. |
Enum |
An attribute that allows a particular field to be rendered as multi-selectable set of flags. |
Experimental |
A PropertyAttribute for showing a warning box that the tagged implementation is experimental. |
Extends |
Constraint that allows selection of classes that extend a specific class when selecting a SystemType with the Unity inspector. |
Find |
A static utility used to avoid deprecated Find Object functions in favor of replacements introduced in Unity >= 2021.3.18. |
Game |
Extension methods for Unity's GameObject class |
Hand |
Utility behavior to access the axis aligned bounds of an articulated hand (or the proxy visualizer of a motion controller). |
Handedness |
Extension methods that make working with the Handedness enum easier. |
Hands |
Collection of utility methods to simplify working with the Hands subsystem(s). |
Implements |
Constraint that allows selection of classes that implement a specific interface when selecting a SystemType with the Unity inspector. |
Interface |
Extension methods for working with interfaces. |
Interface |
This attaches a Unity Inspector drawer that will enable selection and instantiation of concrete classes that are assignable to this field. This pairs best with an interface and the [SerializeReference] attribute, though technically any parent class type will work! |
Label |
Indicates that the serializable property's label should be of a particular width when rendered in the Unity inspector window. |
Math |
Extension methods and helper functions for various math data |
Math |
Useful utilities for manipulating datatype sizes, conversion factors, quaternions, matrices, and other mathematical tasks. |
Mixed |
Custom raycaster that enables features such as stepwise raycasts. |
MRTKBase |
Extended version of XRBaseInteractable to enable multi-hand interactions. |
MRTKProfile |
A build-target-specific profile that determines which subsystems are launched, and which configurations are bound to them. |
MRTKProject |
A class helping users with validating the configuration of the project for use with MRTK3 |
Physics |
Attribute used to make an |
Playspace |
Utilities for retrieving the XR rig's offset transform, for use in transforming tracked object coordinates. |
Serializable |
Generic Dictionary helper class that handles serialization of keys and values into lists before/after serialization time since Dictionary by itself is not Serializable. Extends C# Dictionary class to support typical API access methods |
Smoothing |
Provides several utility functions for smoothing and lerping. |
Stabilized |
A ray whose position and direction are stabilized in a way similar to how gaze stabilization works in HoloLens. |
Stateful |
An extended version of MRTKBaseInteractable that adds additional functionality such as speech support, gaze support, and toggle behaviors. |
Stateful |
A Unity event used by TimedFlag instances. |
System |
Reference to a class Type with support for Unity serialization. |
System |
Reference to a class Type with support for Unity serialization. |
System |
Base class for class selection constraints that can be applied when selecting a SystemType with the Unity inspector. |
Timed |
Represents a flag that can be activated or deactivated, and whose active duration is tracked and obtained via the GetTimeElapsedSinceSetActive() function. Instances of this object will also raise OnEntered and OnExited events when their activate state is altered. |
Transform |
Extension methods for Unity's Transform class |
Transform |
Extension methods specific to the TransformFlags enum. |
UXBinding |
This profile combines binding profiles for all Data Consumers used in the MRTK UXComponents components and is used by the BindingConfigurator that can be dropped on any prefab (or game object hierarchy) to automatically configure all Data Consumers that will be needed to make those game objects data bindable and capable of theming. |
Variable |
An attribute that allows a particular field to be constrained to a range dependent on other variables. |
Vector |
Extension methods for Unity's Vector struct |
XRNode |
Methods which extend the functionality of the Unity XRNode struct. |
XRSubsystem |
A helper class to provide easier access to XR subsystems. |
Data |
A mapping from a datum to a keypath. The datum can be a numeric value that is provided as a string, and it will properly map to a numeric value from the actual data source. |
Hand |
The pose of an individual hand joint. Superset of a UnityEngine.Pose, adding a radius value. |
IPoke |
The path of a poking type movement. |
Mixed |
A structure that wraps position, rotation, and scale structures. |
Ray |
Represents a raycast that is a portion of a longer raycast. |
Reticle |
A struct to store the arguments passed to UpdateVisual(ReticleVisualUpdateArgs) including the interactor associated with the reticle, and reticle position and normal. |
Variable |
A struct to store the arguments passed to UpdateProgress(VariableProgressReticleUpdateArgs). |
IClass |
This interface is used to enable components outside of the Data Binding package to specify bindings for specific implementations of DataConsumers, and then call the ConfigureFromBindingProfile method on any object, typically a DataConsumer, that implements the IDataBindingConfigurator interface, to establish a series of one or more bindings. |
IData |
An interface for binding a class according to a DataBindingProfile. |
IData |
Configures one or more data consumers on a gameobject according to the provided profile. This can bind for both theming and data. |
IGaze |
An interface that all gaze-like interactors implement. Interactors that implement this interface are expected to use the UnityEngine.XR.Interaction.Toolkit.IXRInteractor attachTransform to specify the impact point of the gaze ray on the interactable. |
IGaze |
An interface that all gaze-pinch-like interactors must implement. |
IGrab |
An interface that all grab-like interactors implement. Interactors that implement this interface are expected to use the UnityEngine.XR.Interaction.Toolkit.IXRInteractor attachTransform to specify the point at which the grab occurs. |
IHanded |
An interface that all interactors with the concept of handedness implement. |
IMode |
An interface indicating that this interactor belongs to an GameObject that is governed by the interaction mode manager. This GameObject represents the 'controller' that this interactor belongs to. |
IPoke |
An interface that all poke-like interactors implement. |
IProxy |
The abstract interaction events that all proxy interactors support. Proxy interactors are used to map foreign interaction systems (like UnityUI) onto XRI interaction primitives. |
IRay |
An interface that all far-ray-like interactors implement. Interactors that implement this interface are expected to use the UnityEngine.XR.Interaction.Toolkit.IXRInteractor attachTransform to specify the impact point of the ray on the interactable. |
IReticle |
A customizable visual component of a reticle. |
IScrollable |
A Unity IXRInteractable that is capable of being scrolled by a Unity IXRInteractor. |
ISnap |
Interactables that represent a handle-like affordance should implement this interface, such that interactors can snap their visuals/ray/etc directly to the affordance instead of using the typical local offset. |
ISpeech |
An interface that all speech-driven interactors implement. |
IVariable |
A reticle that is capable of displaying interaction progress. |
IVariable |
An interface that all interactors which offer variable selection must implement. |
Axis |
Used to specify a 3D axis. |
Axis |
Flags used to specify a set of one or more 3D axes. |
Data |
The method of retrieving the final value of the correct type for a data/theme binding to a UX element. |
Display |
Describes the type of display provided by the device. |
Draw |
Types of comparisons. |
Handedness |
Represents handedness; as a bitflag, it can represent left-handedness, right-handedness, both, or neither. |
Stateful |
Toggle modes for interactables. |
Tracked |
The supported tracked hand joints. |
Transform |
Flags used to represent a combination of different types of transformation |
Type |
Indicates how selectable classes should be collated in drop-down menu. |