For detailed information on how this functions for mix and match body parts. Please also see [[Equipping Multiple Avatars]].
<!--T:2-->
The '''AvatarPoseNode''' component is activated when a user equips an avatar with this component under it. The component drives the transforms of the slot it is on, in order to copy the transforms of an [[Component:AvatarObjectSlot]] of the given <code>Node</code>.
== Intoduction ==
<!--T:3-->
<!--T:3-->
== Usage ==
== Fields ==
{{Table ComponentFields
{{Table ComponentFields
|Node|BodyNode|
|Node|BodyNode| the node this component is copying.
|EquipOrderPriority|Int|
|EquipOrderPriority|Int| The priority of this node being updated in the list of Pose Nodes on an Avatar.
|MutuallyExclusiveNodes|BodyNode|
|RunAfterInputUpdate|Bool| Whether to run this component's copy Behavior after the engine's input received stage.
|IsTracking|Bool|
|MutuallyExclusiveNodes|{{RootFieldType|SyncFieldList`1|[[Type:BodyNode|BodyNode]]}}|TypeAdv3=true| When equipped as part of an avatar, if the user equipping has an [[Component:AvatarObjectSlot|AvatarObjectSlot]] with a [[Type:BodyNode|BodyNode]] value from this list, it is forced to dequip the [[Type:IAvatarObject]]s bound to it, kicking them off the user.
|SourceIsTracking|Bool|
|IsTracking|{{RootFieldType|RawOutput`1|[[Type:Bool|Bool]]}}|TypeAdv4=true| Whether this component is tracking
|_objectSlot|AvatarObjectSlot|
|SourceIsTracking|{{RootFieldType|RawOutput`1|[[Type:Bool|Bool]]}}|TypeAdv5=true| Whether the source <code>_objectSlot</code> is currently tracking an inputting object like a controller or FBT device
|_source|Slot|
|SourceIsActive|{{RootFieldType|RawOutput`1|[[Type:Bool|Bool]]}}|TypeAdv6=true| Whether the source <code>_objectSlot</code> is active.
|_position|Float3|
|SourceIsSimulated|{{RootFieldType|RawOutput`1|[[Type:Bool|Bool]]}}|TypeAdv7=true| Whether the source <code>_objectSlot</code> is being simulated by the procedural animation system.
|_rotation|FloatQ|
|_objectSlot|'''[[Component:AvatarObjectSlot|AvatarObjectSlot]]'''|TypeAdv8=true| The object slot this component is getting pose data and tracking data from.
|_source|Slot| the slot of <code>_objectSlot</code>
|_position|{{RootFieldType|FieldDrive`1|[[Type:Float3|Float3]]}}|TypeAdv10=true| The position field to drive to the pose data. Usually the position field of the slot this component is on.
|_rotation|{{RootFieldType|FieldDrive`1|[[Type:FloatQ|FloatQ]]}}|TypeAdv11=true| The rotation field to drive to the pose data. Usually the rotation field of the slot this component is on.
|_scale|{{RootFieldType|FieldDrive`1|[[Type:Float3|Float3]]}}|TypeAdv12=true| The scale to drive to the scale of <code>_source</code> if drive scale is enabled on the <code>_objectSlot</code>.
|_active|{{RootFieldType|FieldDrive`1|[[Type:Bool|Bool]]}}|TypeAdv13=true| Whether this component is currently active and setting pose data.
}}
}}
<!--T:4-->
<!--T:4-->
== Behavior ==
== Usage ==
This can be used to make avatars, with only single parts like hands or arms and be mixed and matched with other parts.
For detailed information on how this functions for mix and match body parts. Please also see Equipping Multiple Avatars.
The AvatarPoseNode component is activated when a user equips an avatar with this component under it. The component drives the transforms of the slot it is on, in order to copy the transforms of an Component:AvatarObjectSlot of the given Node.
When equipped as part of an avatar, if the user equipping has an AvatarObjectSlot with a BodyNode value from this list, it is forced to dequip the Type:IAvatarObjects bound to it, kicking them off the user.