UxrAvatarComponent<T> Class

Generic base class for components that are added to an UxrAvatar and we want to keep track of. It allows to enumerate components using static methods. This class could have instead inherited from UxrComponent<TP, TC> but we avoided this to not have redundancy between Avatar/Parent properties and methods.

Inheritance Hierarchy

System.Object
  Object
    Component
      Behaviour
        MonoBehaviour
          UltimateXR.Core.Components.UxrComponent
            UltimateXR.Core.Components.UxrComponent<T>
              UltimateXR.Core.Components.Composite.UxrAvatarComponent<T>
                More… Namespace: UltimateXR.Core.Components.Composite
Assembly: UltimateXR (in UltimateXR.dll) Version: 0.0.0.0

Syntax

C#

public abstract class UxrAvatarComponent<T> : UxrComponent<T>
where T : UxrAvatarComponent<T>


Type Parameters

 

T
Component type
  The UxrAvatarComponent<T> type exposes the following members.

Constructors

NameDescription
Protected methodUxrAvatarComponent<T>

Properties

NameDescription
Public propertyAllComponentsInAvatar Gets all the components, enabled of not, of this specific type that belong to this instance of the avatar.
Public propertyStatic memberAllComponentsInLocalAvatar Gets all the components, enabled or not, of this specific type that belong to the local avatar.
Public propertyAvatar Gets the UxrAvatar the component belongs to.
Public propertyEnabledComponentsInAvatar Gets only the enabled components of this specific type that belong to this instance of the avatar.
Public propertyStatic memberEnabledComponentsInLocalAvatar Gets all the enabled components of this specific type that belong to the local avatar.
Public propertyStatic memberLocalAvatar Gets the local avatar or null if there is none.

Methods

NameDescription
Protected methodAwake Pre-caches the avatar component. (Overrides UxrComponent<T>.Awake().)
Public methodStatic memberGetComponents(UxrAvatar, Boolean) Gets the components of a specific avatar.
Public methodStatic memberGetComponents<TC>(UxrAvatar, Boolean) Gets the components of a specific avatar.

Extension Methods

NameDescription
Public Extension MethodCheckSetEnabled Enables/disabled the component if it isn’t enabled already. (Defined by MonoBehaviourExt.)
Public Extension MethodGetOrAddComponent<T> Gets the Component of a given type. If it doesn’t exist, it is added to the GameObject. (Defined by ComponentExt.)
Public Extension MethodGetPathUnderScene Gets the full path under current scene, including all parents, but scene name, for the given component. (Defined by ComponentExt.)
Public Extension MethodGetSceneUid Gets an unique identifier string for the given component. (Defined by ComponentExt.)
Public Extension MethodGetUniqueScenePath Gets an unique path in the scene for the given component. It will include scene name, sibling and component indices to make it unique. (Defined by ComponentExt.)
Public Extension MethodLoopCoroutine Creates a coroutine that simplifies executing a loop during a certain amount of time. (Defined by MonoBehaviourExt.)
Public Extension MethodSafeGetComponentInParent<T> Gets the Component of a given type in the GameObject or any of its parents. It also works on prefabs, where regular GetComponentInParent(Type, Boolean) will not work: https://issuetracker.unity3d.com/issues/getcomponentinparent-is-returning-null-when-the-gameobject-is-a-prefab (Defined by ComponentExt.)
Public Extension MethodShowInInspector(Boolean)Overloaded.
Controls whether to show the current object in the inspector. (Defined by ObjectExt.)
Public Extension MethodShowInInspector(Boolean, Boolean)Overloaded.
Controls whether to show the current object in the inspector and whether it is editable. (Defined by ObjectExt.)
Public Extension MethodThrowIfNull Throws an exception if the object is null. (Defined by ObjectExt.)

See Also

Reference

UltimateXR.Core.Components.Composite Namespace

Inheritance HierarchySystem.Object
  Object
    Component
      Behaviour
        MonoBehaviour
          UltimateXR.Core.Components.UxrComponent
            UltimateXR.Core.Components.UxrComponent<T>
              UltimateXR.Core.Components.Composite.UxrAvatarComponent<T>
                UltimateXR.Animation.IK.UxrIKSolver
                UltimateXR.Avatar.Controllers.UxrAvatarController
                UltimateXR.Avatar.UxrHandIntegration
                UltimateXR.CameraUtils.UxrCameraDepthEnable
                UltimateXR.CameraUtils.UxrCameraFade
                UltimateXR.CameraUtils.UxrCameraWallFade
                UltimateXR.Devices.UxrControllerInput
                UltimateXR.Devices.UxrTrackingDevice
                UltimateXR.Devices.Visualization.UxrControllerHand
                UltimateXR.Locomotion.UxrLocomotion
                UltimateXR.Manipulation.UxrGrabber
                UltimateXR.UI.UxrFingerTip
                UltimateXR.UI.UxrLaserPointer