اقرأ باللغة الإنجليزية تحرير

مشاركة عبر


MixedReality.Toolkit Namespace

Classes

AssemblyExtensions

Defines extension methods for the Assembly type.

AxisFlagsExtensions

Extension methods specific to the AxisFlags enumeration.

BaseMRTKProfile

Base abstract class for all profiles.

BaseSubsystemConfig

The base class that all subsystem configuration data inherits from.

BoundsExtensions

Extensions for Unity's Bounds struct.

CameraExtensions

Extension methods for the Unity's Camera class

CameraFOVChecker

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.

CameraSettings

Class that contains settings which are applied to CameraSettingsManager.

CameraSettingsManager

Class that applies the appropriate camera settings based on the display type.

ClassDataBindingProfile

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 IDataConsumer classes can be serviced by this implementation of a binding profile.

ColorUtilities

Utilities for manipulating and interpolating between colors and gradients.

ComponentCache<T>

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.

ComponentExtensions

Extensions methods for the Unity Component class. This also includes some component-related extensions for the GameObject class.

ControllerLookup

A basic convenience registry allowing easy reference to controllers.

DataBindingProfile

This profile can be used to configure data and theme binding settings for a themed UX element.

DrawIfAttribute

Conditionally draws a property or field.

DrawIfPropertyDrawer

A custom property drawer for fields decorated with the DrawIfAttribute attribute.

EditableTimedFlagAttribute

Attribute to enable an inspector checkbox for toggling the state at edit-time. Mostly used for Toggle state.

EnumerableExtensions

Extension methods to simplify working with IEnumerable collections.

EnumFlagsAttribute

An attribute that allows a particular field to be rendered as multi-selectable set of flags.

ExperimentalAttribute

A PropertyAttribute for showing a warning box that the tagged implementation is experimental.

ExtendsAttribute

Constraint that allows selection of classes that extend a specific class when selecting a SystemType with the Unity inspector.

FindObjectUtility

A static utility used to avoid deprecated Find Object functions in favor of replacements introduced in Unity >= 2021.3.18.

GameObjectExtensions

Extension methods for Unity's GameObject class

HandBounds

Utility behavior to access the axis aligned bounds of an articulated hand (or the proxy visualizer of a motion controller).

HandednessExtensions

Extension methods that make working with the Handedness enum easier.

HandsUtils

Collection of utility methods to simplify working with the Hands subsystem(s).

ImplementsAttribute

Constraint that allows selection of classes that implement a specific interface when selecting a SystemType with the Unity inspector.

InterfaceExtensions

Extension methods for working with interfaces.

InterfaceSelectorAttribute

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!

LabelWidthAttribute

Indicates that the serializable property's label should be of a particular width when rendered in the Unity inspector window.

MathExtensions

Extension methods and helper functions for various math data

MathUtilities

Useful utilities for manipulating datatype sizes, conversion factors, quaternions, matrices, and other mathematical tasks.

MixedRealityRaycaster

Custom raycaster that enables features such as stepwise raycasts.

MRTKBaseInteractable

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.

MRTKProjectValidation

A class helping users with validating the configuration of the project for use with MRTK3

PhysicsLayerAttribute

Attribute used to make an int field render a dropdown generated from the current layers defined in the Unity tag manager.

PlayspaceUtilities

Utilities for retrieving the XR rig's offset transform, for use in transforming tracked object coordinates.

SerializableDictionary<TKey,TValue>

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.

StabilizedRay

A ray whose position and direction are stabilized in a way similar to how gaze stabilization works in HoloLens.

StatefulInteractable

An extended version of MRTKBaseInteractable that adds additional functionality such as speech support, gaze support, and toggle behaviors.

StatefulTimerEvent

A Unity event used by TimedFlag instances.

SystemInterfaceType

Reference to a class Type with support for Unity serialization.

SystemType

Reference to a class Type with support for Unity serialization.

SystemTypeAttribute

Base class for class selection constraints that can be applied when selecting a SystemType with the Unity inspector.

TimedFlag

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.

TransformExtensions

Extension methods for Unity's Transform class

TransformFlagsExtensions

Extension methods specific to the TransformFlags enum.

UXBindingProfileTemplate

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.

VariableRangeAttribute

An attribute that allows a particular field to be constrained to a range dependent on other variables.

VectorExtensions

Extension methods for Unity's Vector struct

XRNodeExtensions

Methods which extend the functionality of the Unity XRNode struct.

XRSubsystemHelpers

A helper class to provide easier access to XR subsystems.

Structs

DataBindingProfile.ValueToKeypath

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.

HandJointPose

The pose of an individual hand joint. Superset of a UnityEngine.Pose, adding a radius value.

IPokeInteractor.PokePath

The path of a poking type movement.

MixedRealityTransform

A structure that wraps position, rotation, and scale structures.

RayStep

Represents a raycast that is a portion of a longer raycast.

ReticleVisualUpdateArgs

A struct to store the arguments passed to UpdateVisual(ReticleVisualUpdateArgs) including the interactor associated with the reticle, and reticle position and normal.

VariableProgressReticleUpdateArgs

A struct to store the arguments passed to UpdateProgress(VariableProgressReticleUpdateArgs).

Interfaces

IClassDataBindingProfile

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.

IDataBindable

An interface for binding a class according to a DataBindingProfile.

IDataBindingConfigurator

Configures one or more data consumers on a gameobject according to the provided profile. This can bind for both theming and data.

IGazeInteractor

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.

IGazePinchInteractor

An interface that all gaze-pinch-like interactors must implement.

IGrabInteractor

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.

IHandedInteractor

An interface that all interactors with the concept of handedness implement.

IModeManagedInteractor

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.

IPokeInteractor

An interface that all poke-like interactors implement.

IProxyInteractor

The abstract interaction events that all proxy interactors support. Proxy interactors are used to map foreign interaction systems (like UnityUI) onto XRI interaction primitives.

IRayInteractor

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.

IReticleVisual

A customizable visual component of a reticle.

IScrollable

A Unity IXRInteractable that is capable of being scrolled by a Unity IXRInteractor.

ISnapInteractable

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.

ISpeechInteractor

An interface that all speech-driven interactors implement.

IVariableProgressReticle

A reticle that is capable of displaying interaction progress.

IVariableSelectInteractor

An interface that all interactors which offer variable selection must implement.

Enums

Axis

Used to specify a 3D axis.

AxisFlags

Flags used to specify a set of one or more 3D axes.

DataRetrievalMethod

The method of retrieving the final value of the correct type for a data/theme binding to a UX element.

DisplayType

Describes the type of display provided by the device.

DrawIfAttribute.ComparisonType

Types of comparisons.

Handedness

Represents handedness; as a bitflag, it can represent left-handedness, right-handedness, both, or neither.

StatefulInteractable.ToggleType

Toggle modes for interactables.

TrackedHandJoint

The supported tracked hand joints.

TransformFlags

Flags used to represent a combination of different types of transformation

TypeGrouping

Indicates how selectable classes should be collated in drop-down menu.