--- generated_by: gdlink-build generated_at: 2026-06-23T12:34:28Z do_not_edit: true title: XR Avatar brick_type: executor tier: Pro generated: true --- # XR Avatar **Category:** Executor **Tier:** Pro ## Purpose Drives skeletal and blend-shape data from XR trackers onto visual meshes. ## Visual Reference ```{raw} html
As added to your scene
XR Avatar brick as it appears in the GDLink editor
``` ## Runtime Behavior **Inputs** - **Activate** (Boolean): When true, continuously drive the target skeleton/mesh from tracker data each tick. **Properties** **Core (always visible)** - **avatar_target** (Enum, default `"Hand"`): `Hand`, `Body`, `Face` - **update_frequency** (Enum, default `"Every Frame"`): `Every Frame`, `Physics Tick` **Hand Mode (`visible_if: {avatar_target: "Hand"}`)** - **tracker_hand** (Enum): `Left`, `Right` - **target_skeleton** (NodePath): Path to Skeleton3D node. - **hide_when_lost** (Bool, default `true`): Hide hand mesh when tracking is lost. - **bone_update** (Enum, default `"Full"`): `Full` (position + rotation), `Rotation Only` **Body Mode (`visible_if: {avatar_target: "Body"}`)** - **tracker_name** (String, default `"PrimaryBody"`): XRBodyTracker name. - **target_skeleton** (NodePath): Path to Skeleton3D node. - **selective_tracking** (Flags, default `Full`): `Full`, `Upper Body`, `Lower Body`, `Hands Only` - **bone_update** (Enum, default `"Full"`): `Full`, `Rotation Only` **Face Mode (`visible_if: {avatar_target: "Face"}`)** - **face_tracker** (String, default `"PrimaryFace"`): XRFaceTracker name. - **target_mesh** (NodePath): Path to MeshInstance3D with blend shapes. - **face_mapping** (Enum, default `"Auto-Map"`): `Auto-Map` (match blend shape names), `Manual` (explicit mapping table) --- ```{raw} html
Generated UI Mockup — showing expanded properties
XR Avatar
-
x
Name:
Label this brick...
Target:
Hand
Update:
Every Frame
Skeleton:
v
Bones:
Full
Tracker:
PrimaryBody
v
Skeleton:
v
Tracker:
PrimaryFace
v
Mesh:
v
Mapping:
Auto-Map
Hand
Right
Hide Lost
Region
Full
Bones
Full
``` ## Properties | Property | Type | Default | Notes | |---|---|---|---| | Target | option | Hand | Avatar driving mode | | Update | option | Every Frame | How often to sync tracker data | | Hand | option | Right | Which hand to drive | | Skeleton | string | | Path to Skeleton3D node | | Hide Lost | bool | True | Hide hand mesh when tracking is lost | | Bones | option | Full | Full transform or rotation only | | Tracker | string | PrimaryBody | XRBodyTracker name | | Skeleton | string | | Path to Skeleton3D node | | Region | option | Full | Body regions to drive | | Bones | option | Full | Full transform or rotation only | | Tracker | string | PrimaryFace | XRFaceTracker name | | Mesh | string | | Path to MeshInstance3D with blend shapes | | Mapping | option | Auto-Map | Auto-Map: match blend shape names. Manual: explicit table |