docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class RigConstraint<TJob, TData, TBinder>

    This is the base class for rig constraints. Inherit from this class to implement custom constraints.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    RigConstraint<TJob, TData, TBinder>
    BlendConstraint
    ChainIKConstraint
    DampedTransform
    MultiAimConstraint
    MultiParentConstraint
    MultiPositionConstraint
    MultiReferentialConstraint
    MultiRotationConstraint
    OverrideTransform
    TwistChainConstraint
    TwistCorrection
    TwoBoneIKConstraint
    Implements
    IRigConstraint
    Inherited Members
    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
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine.Animations.Rigging
    Assembly: Unity.Animation.Rigging.dll
    Syntax
    public class RigConstraint<TJob, TData, TBinder> : MonoBehaviour, IRigConstraint where TJob : struct, IWeightedAnimationJob where TData : struct, IAnimationJobData where TBinder : AnimationJobBinder<TJob, TData>, new()
    Type Parameters
    Name Description
    TJob

    The constraint job

    TData

    The constraint data

    TBinder

    The constraint job binder

    Fields

    m_Data

    The constraint data.

    Declaration
    [SerializeField]
    protected TData m_Data
    Field Value
    Type Description
    TData

    m_Weight

    The constraint weight parameter.

    Declaration
    [SerializeField]
    [Range(0, 1)]
    protected float m_Weight
    Field Value
    Type Description
    float

    Properties

    data

    The data container for the constraint.

    Declaration
    public ref TData data { get; }
    Property Value
    Type Description
    TData

    weight

    The constraint weight. This is a value in between 0 and 1.

    Declaration
    public float weight { get; set; }
    Property Value
    Type Description
    float

    Methods

    CreateJob(Animator)

    Creates the animation job for this constraint.

    Declaration
    public IAnimationJob CreateJob(Animator animator)
    Parameters
    Type Name Description
    Animator animator

    The animated hierarchy Animator component

    Returns
    Type Description
    IAnimationJob

    Returns the newly instantiated job.

    DestroyJob(IAnimationJob)

    Frees the specified job memory.

    Declaration
    public void DestroyJob(IAnimationJob job)
    Parameters
    Type Name Description
    IAnimationJob job

    The job to destroy.

    IsValid()

    Retrieves the constraint valid state.

    Declaration
    public bool IsValid()
    Returns
    Type Description
    bool

    Returns true if constraint data can be successfully evaluated. Returns false otherwise.

    OnValidate()

    This function is called when the script is loaded or a value is changed in the Inspector (Called in the editor only). You can use this to ensure that when you modify data in an editor, that data stays within a certain range.

    Declaration
    protected virtual void OnValidate()

    Reset()

    Resets constraint data to default values.

    Declaration
    public void Reset()

    UpdateJob(IAnimationJob)

    Updates the specified job data.

    Declaration
    public void UpdateJob(IAnimationJob job)
    Parameters
    Type Name Description
    IAnimationJob job

    The job to update.

    Implements

    IRigConstraint
    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)