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
Expérimental : This class may be changed or removed in future versions.
Hérite de : SkeletonModifier3D < Node3D < Node < Object
Un nœud pour contrôler les maillage de corps depuis des données XRBodyTracker.
Description
Ce nœud utilise les données de suivi du corps d'un XRBodyTracker pour rendre les poses du squelette d'un maillage de corps.
Le positionnement du corps est effectué en créant un ancêtre XRNode3D du maillage de corps conduit par le même XRBodyTracker.
Les données de position du corps sont dimensionnées par Skeleton3D.motion_scale lorsqu'elles sont appliquées au squelette, ce qui peut être utilisé pour ajuster le corps suivi afin de correspondre à l'échelle du modèle de corps.
Tutoriels
Propriétés
|
||
BitField[BodyUpdate] |
|
|
|
Énumérations
flags BodyUpdate: 🔗
BodyUpdate BODY_UPDATE_UPPER_BODY = 1
Les articulations supérieures du squelette sont mises à jour.
BodyUpdate BODY_UPDATE_LOWER_BODY = 2
Les articulations inférieures du squelette sont mises à jour.
BodyUpdate BODY_UPDATE_HANDS = 4
Les articulations des mains du squelette sont mises à jour.
enum BoneUpdate: 🔗
BoneUpdate BONE_UPDATE_FULL = 0
Les os du squelette sont complètement mis à jour (à la fois en position et en rotation) pour correspondre aux os suivis.
BoneUpdate BONE_UPDATE_ROTATION_ONLY = 1
Les os du squelette ne sont tournés que pour s'aligner avec les os suivis, préservant la longueur des os.
BoneUpdate BONE_UPDATE_MAX = 2
Représente la taille de l'énumération BoneUpdate.
Descriptions des propriétés
StringName body_tracker = &"/user/body_tracker" 🔗
void set_body_tracker(value: StringName)
StringName get_body_tracker()
Le nom du XRBodyTracker enregistré avec XRServer d'où obtenir les données de suivi du corps.
BitField[BodyUpdate] body_update = 7 🔗
void set_body_update(value: BitField[BodyUpdate])
BitField[BodyUpdate] get_body_update()
Spécifie les parties du corps à mettre à jour.
BoneUpdate bone_update = 0 🔗
void set_bone_update(value: BoneUpdate)
BoneUpdate get_bone_update()
Spécifie le type de mises à jour à effectuer sur les os.