docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class MocapDevice<T>

    A type of LiveCaptureDevice that provides the common functionality required to implement support for third-party motion capture devices.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    LiveCaptureDevice
    MocapDevice<T>
    Inherited Members
    LiveCaptureDevice.UpdateDevice()
    LiveCaptureDevice.IsReady()
    LiveCaptureDevice.Refresh()
    LiveCaptureDevice.IsRecording
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(string, float)
    MonoBehaviour.InvokeRepeating(string, float, float)
    MonoBehaviour.CancelInvoke(string)
    MonoBehaviour.IsInvoking(string)
    MonoBehaviour.StartCoroutine(string)
    MonoBehaviour.StartCoroutine(string, object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(string)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(object)
    MonoBehaviour.destroyCancellationToken
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, out Component)
    Component.TryGetComponent<T>(out T)
    Component.GetComponent(string)
    Component.GetComponentInChildren(Type, bool)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(bool)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, bool)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(bool)
    Component.GetComponentsInChildren<T>(bool, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, bool)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>(bool)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, bool)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(bool)
    Component.GetComponentsInParent<T>(bool, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(string)
    Component.SendMessageUpwards(string, object, SendMessageOptions)
    Component.SendMessageUpwards(string, object)
    Component.SendMessageUpwards(string)
    Component.SendMessageUpwards(string, SendMessageOptions)
    Component.SendMessage(string, object)
    Component.SendMessage(string)
    Component.SendMessage(string, object, SendMessageOptions)
    Component.SendMessage(string, SendMessageOptions)
    Component.BroadcastMessage(string, object, SendMessageOptions)
    Component.BroadcastMessage(string, object)
    Component.BroadcastMessage(string)
    Component.BroadcastMessage(string, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    Namespace: Unity.LiveCapture.Mocap
    Assembly: Unity.LiveCapture.Mocap.dll
    Syntax
    public abstract class MocapDevice<T> : LiveCaptureDevice
    Type Parameters
    Name Description
    T

    The type of data the device uses each frame to pose the actor.

    Properties

    Animator

    The Animator component this device operates.

    Declaration
    public Animator Animator { get; set; }
    Property Value
    Type Description
    Animator

    FrameRate

    The number of data samples per second.

    Declaration
    protected FrameRate FrameRate { get; set; }
    Property Value
    Type Description
    FrameRate

    SyncBuffer

    The synchronized data buffer.

    Declaration
    public ITimedDataSource SyncBuffer { get; }
    Property Value
    Type Description
    ITimedDataSource

    Methods

    AddFrame(T, FrameTimeWithRate?)

    Process a new frame of data.

    Declaration
    protected void AddFrame(T frame, FrameTimeWithRate? frameTime)
    Parameters
    Type Name Description
    T frame

    The frame to add.

    FrameTimeWithRate? frameTime

    The timecode of the frame. When null, a timecode will be generated.

    GetInterpolator()

    Returns the interpolator to use when presenting values between frame samples.

    Declaration
    protected virtual IInterpolator<T> GetInterpolator()
    Returns
    Type Description
    IInterpolator<T>

    The interpolator to use when presenting values between frame samples.

    LiveUpdate()

    Declaration
    protected override void LiveUpdate()
    Overrides
    LiveCaptureDevice.LiveUpdate()

    OnDestroy()

    This function is called when the behaviour gets destroyed.

    Declaration
    protected virtual void OnDestroy()

    OnDisable()

    Declaration
    protected override void OnDisable()
    Overrides
    LiveCaptureDevice.OnDisable()

    OnEnable()

    Declaration
    protected override void OnEnable()
    Overrides
    LiveCaptureDevice.OnEnable()

    OnRecordingChanged()

    The device calls this method when the recording state changes.

    Declaration
    protected virtual void OnRecordingChanged()

    OnStartRecording()

    Declaration
    protected override sealed void OnStartRecording()
    Overrides
    LiveCaptureDevice.OnStartRecording()

    OnStopRecording()

    Declaration
    protected override sealed void OnStopRecording()
    Overrides
    LiveCaptureDevice.OnStopRecording()

    OnValidate()

    Editor-only function that Unity calls when the script is loaded or a value changes in the Inspector.

    Declaration
    protected virtual void OnValidate()
    Remarks

    You would usually use this to perform an action after a value changes in the Inspector; for example, making sure that data stays within a certain range.

    Present(Transform, Vector3?, Quaternion?, Vector3?)

    Sets the position, rotation and scale of a specified transform.

    Declaration
    protected void Present(Transform transform, Vector3? position, Quaternion? rotation, Vector3? scale)
    Parameters
    Type Name Description
    Transform transform

    The transform to present the values to.

    Vector3? position

    The position to set.

    Quaternion? rotation

    The rotation to set.

    Vector3? scale

    The scale to set.

    Remarks

    The values are not immediately applied and might change due to other devices operating the same transform.

    ProcessFrame(T)

    Override this method to process the specified frame.

    Declaration
    protected abstract void ProcessFrame(T frame)
    Parameters
    Type Name Description
    T frame

    The frame to add.

    RegisterLiveProperties()

    Registers the animated transforms to prevent Unity from marking Prefabs or the Scene as modified when you preview animations.

    Declaration
    public void RegisterLiveProperties()

    ResetSyncBuffer()

    Clears all frames in the synchronization buffer.

    Declaration
    protected void ResetSyncBuffer()

    RestoreLiveProperties()

    Restores the transforms previously registered.

    Declaration
    public void RestoreLiveProperties()

    Write(ITakeBuilder)

    Declaration
    public override void Write(ITakeBuilder takeBuilder)
    Parameters
    Type Name Description
    ITakeBuilder takeBuilder
    Overrides
    LiveCaptureDevice.Write(ITakeBuilder)
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)