RetargetModifier3D

Hereda: SkeletonModifier3D < Node3D < Node < Object

Un modificador para transferir poses de esqueletos padres (o poses globales) a esqueletos hijos en el espacio del modelo con diferentes rests.

Descripción

Retrieves the pose (or global pose) relative to the parent Skeleton's rest in model space and transfers it to the child Skeleton.

This modifier rewrites the pose of the child skeleton directly in the parent skeleton's update process. This means that it overwrites the mapped bone pose set in the normal process on the target skeleton. If you want to set the target skeleton bone pose after retargeting, you will need to add a SkeletonModifier3D child to the target skeleton and thereby modify the pose.

Note: When the use_global_pose is enabled, even if it is an unmapped bone, it can cause visual problems because the global pose is applied ignoring the parent bone's pose if it has mapped bone children. See also use_global_pose.

Propiedades

BitField[TransformFlag]

enable

7

SkeletonProfile

profile

bool

use_global_pose

false

Métodos

bool

is_position_enabled() const

bool

is_rotation_enabled() const

bool

is_scale_enabled() const

void

set_position_enabled(enabled: bool)

void

set_rotation_enabled(enabled: bool)

void

set_scale_enabled(enabled: bool)


Enumeraciones

flags TransformFlag: 🔗

TransformFlag TRANSFORM_FLAG_POSITION = 1

Si se establece, permite reasignar la posición.

TransformFlag TRANSFORM_FLAG_ROTATION = 2

Si se establece, permite reasignar la rotación.

TransformFlag TRANSFORM_FLAG_SCALE = 4

Si se establece, permite reasignar la escala.

TransformFlag TRANSFORM_FLAG_ALL = 7

Si se establece, permite reasignar la posición/rotación/escala.


Descripciones de Propiedades

BitField[TransformFlag] enable = 7 🔗

Banderas para controlar el proceso de los elementos de transformación individualmente cuando use_global_pose está desactivado.


SkeletonProfile profile 🔗

SkeletonProfile para reasignar huesos con nombres que coincidan con la lista de huesos.


bool use_global_pose = false 🔗

  • void set_use_global_pose(value: bool)

  • bool is_using_global_pose()

Si es false, en caso de que el esqueleto de destino tenga menos huesos que el esqueleto de origen, la transformación del padre del hueso de origen se ignorará.

En su lugar, es posible reasignar entre modelos con diferentes formas de cuerpo, y la posición, la rotación y la escala se pueden reasignar por separado.

Si es true, la reasignación se realiza teniendo en cuenta la pose global.

En caso de que el esqueleto de destino tenga menos huesos que el esqueleto de origen, el transformación del padre del hueso de origen se tiene en cuenta. Sin embargo, la longitud del hueso entre esqueletos debe coincidir exactamente, si no, los huesos se verán obligados a expandirse o encogerse.

Esto es útil para usar hueso falso con longitud 0 para que coincida con posturas al reasignar entre modelos con diferente número de huesos.


Descripciones de Métodos

bool is_position_enabled() const 🔗

Devuelve true si enable tiene TRANSFORM_FLAG_POSITION.


bool is_rotation_enabled() const 🔗

Devuelve true si enable tiene TRANSFORM_FLAG_ROTATION.


bool is_scale_enabled() const 🔗

Devuelve true si enable tiene TRANSFORM_FLAG_SCALE.


void set_position_enabled(enabled: bool) 🔗

Establece TRANSFORM_FLAG_POSITION en enable.


void set_rotation_enabled(enabled: bool) 🔗

Establece TRANSFORM_FLAG_ROTATION en enable.


void set_scale_enabled(enabled: bool) 🔗

Establece TRANSFORM_FLAG_SCALE en enable.