Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
XRBodyModifier3D
Sperimentale: This class may be changed or removed in future versions.
Eredita: SkeletonModifier3D < Node3D < Node < Object
Un nodo per guidare le mesh del corpo dai dati di un XRBodyTracker.
Descrizione
Questo nodo utilizza i dati di tracciamento del corpo da un XRBodyTracker per posizionare lo scheletro di una mesh del corpo.
Il posizionamento del corpo è eseguito creando un antenato XRNode3D della mesh del corpo guidato dallo stesso XRBodyTracker.
I dati di posizione del tracciamento del corpo sono ridimensionati da Skeleton3D.motion_scale quando applicati allo scheletro, che può essere usato per regolare il corpo tracciato in modo che corrisponda alla scala del modello del corpo.
Tutorial
Proprietà
|
||
BitField[BodyUpdate] |
|
|
|
Enumerazioni
flags BodyUpdate: 🔗
BodyUpdate BODY_UPDATE_UPPER_BODY = 1
Le articolazioni della parte superiore del corpo dello scheletro sono aggiornate.
BodyUpdate BODY_UPDATE_LOWER_BODY = 2
Le articolazioni della parte inferiore del corpo dello scheletro sono aggiornate.
BodyUpdate BODY_UPDATE_HANDS = 4
Le articolazioni delle mani dello scheletro sono aggiornate.
enum BoneUpdate: 🔗
BoneUpdate BONE_UPDATE_FULL = 0
Le ossa dello scheletro sono completamente aggiornate (sia la posizione sia la rotazione) per corrispondere alle ossa tracciate.
BoneUpdate BONE_UPDATE_ROTATION_ONLY = 1
Le ossa dello scheletro sono solo ruotate per allinearle con le ossa tracciate, preservandone la lunghezza.
BoneUpdate BONE_UPDATE_MAX = 2
Rappresenta la dimensione dell'enumerazione BoneUpdate.
Descrizioni delle proprietà
StringName body_tracker = &"/user/body_tracker" 🔗
void set_body_tracker(value: StringName)
StringName get_body_tracker()
Il nome del XRBodyTracker registrato con il XRServer da cui ottenere i dati di tracciamento del corpo.
BitField[BodyUpdate] body_update = 7 🔗
void set_body_update(value: BitField[BodyUpdate])
BitField[BodyUpdate] get_body_update()
Specifica le parti del corpo da aggiornare.
BoneUpdate bone_update = 0 🔗
void set_bone_update(value: BoneUpdate)
BoneUpdate get_bone_update()
Specifica il tipo di aggiornamenti da eseguire sulle ossa.