Main class for avatars in the scene. An avatar is the visual representation of a user in the application. The minimal representation requires a single camera that allows the user to look around. More elements can be added such as hands to interact with the environment or a half/full body to have a more complete representation.
A special avatar is the local avatar, which is the avatar controlled by the user using the headset and input controllers. Non-local avatars are other avatars instantiated in the scene but not controlled by the user, either other users through the network or special cases such as automated replays. A quick way to access the local avatar is by using the UxrAvatar.LocalAvatar static property.
Although avatars may contain significant information and components, the avatar is not in charge of updating itself. Local avatars are updated by the UxrAvatarController added to the same GameObject where the UxrAvatar is. This allows to separate the update logic and functionality from the avatar representation. The standard avatar controller provided by UltimateXR is the UxrStandardAvatarController component. It provides high-level functionality to interact with the virtual world. Different update logic can be created by programming a new UxrAvatarController component if required.
Non-local avatars (Avatars whose UxrAvatar.AvatarMode is UpdateExternally) can be updated by accessing their rig using AvatarRig.
Local avatar update logic is handled automatically by the UxrManager singleton without requiring any user intervention.
|UxrAvatarEventArgs||Base class for avatar events.|
|UxrAvatarHandPoseChangeEventArgs||Event args for a hand pose change in an UxrAvatar.|
Contains information about an UxrAvatar that has moved/rotated. Avatars are moved/rotated through UxrManager functionality such as:
|UxrAvatarStartedEventArgs||Arguments for the avatar started event.|
|UxrAvatarSyncEventArgs||Describes an event raised by an UxrAvatar that can also be played back. This facilitates the manipulation synchronization through network.|
|UxrAvatarUpdateEventArgs||Contains information about an avatar update event.|
|UxrHandIntegration||Component that allows to select different graphical variations for the hands that are shown grabbing the controllers using IK.|
|UxrAvatarMode||Avatar operating modes.|
|UxrAvatarRenderModes||Flags describing the different avatar render elements that can be enabled/disabled separately.|
|UxrAvatarSyncEventType||Enumerates the different events that can be synced for networking using UxrAvatarSyncEventArgs .|
|UxrHandIntegration.GizmoHandSize||Enumerates the supported gizmo hand sizes.|