SkeletonProfile

Hereda: Resource < RefCounted < Object

Heredado por: SkeletonProfileHumanoid

Base class for a profile of a virtual skeleton used as a target for retargeting.

Descripción

Este recurso se utiliza en EditorScenePostImport. Algunos parámetros se refieren a huesos en Skeleton3D, Skin, Animation, y algunos otros nodos se reescriben basándose en los parámetros de SkeletonProfile.

Nota: Estos parámetros solo deben establecerse al crear un perfil personalizado. En SkeletonProfileHumanoid, se definen internamente como valores de solo lectura.

Tutoriales

Propiedades

int

bone_size

0

int

group_size

0

StringName

root_bone

&""

StringName

scale_base_bone

&""

Métodos

int

find_bone(bone_name: StringName) const

StringName

get_bone_name(bone_idx: int) const

StringName

get_bone_parent(bone_idx: int) const

StringName

get_bone_tail(bone_idx: int) const

StringName

get_group(bone_idx: int) const

StringName

get_group_name(group_idx: int) const

Vector2

get_handle_offset(bone_idx: int) const

Transform3D

get_reference_pose(bone_idx: int) const

TailDirection

get_tail_direction(bone_idx: int) const

Texture2D

get_texture(group_idx: int) const

bool

is_required(bone_idx: int) const

void

set_bone_name(bone_idx: int, bone_name: StringName)

void

set_bone_parent(bone_idx: int, bone_parent: StringName)

void

set_bone_tail(bone_idx: int, bone_tail: StringName)

void

set_group(bone_idx: int, group: StringName)

void

set_group_name(group_idx: int, group_name: StringName)

void

set_handle_offset(bone_idx: int, handle_offset: Vector2)

void

set_reference_pose(bone_idx: int, bone_name: Transform3D)

void

set_required(bone_idx: int, required: bool)

void

set_tail_direction(bone_idx: int, tail_direction: TailDirection)

void

set_texture(group_idx: int, texture: Texture2D)


Señales

profile_updated() 🔗

Esta señal se emite cuando se cambia el valor en el perfil. Esto se utiliza para actualizar el nombre de la clave en el BoneMap y para volver a dibujar el editor de BoneMaps.

Nota: Esta señal no está conectada directamente al editor para simplificar la referencia, sino que se pasa al editor a través del BoneMap.


Enumeraciones

enum TailDirection: 🔗

TailDirection TAIL_DIRECTION_AVERAGE_CHILDREN = 0

Dirección a las coordenadas promedio de los hijos del hueso.

TailDirection TAIL_DIRECTION_SPECIFIC_CHILD = 1

Direction to the coordinates of specified bone child.

TailDirection TAIL_DIRECTION_END = 2

Direction is not calculated.


Descripciones de Propiedades

int bone_size = 0 🔗

  • void set_bone_size(value: int)

  • int get_bone_size()

The amount of bones in retargeting section's BoneMap editor. For example, SkeletonProfileHumanoid has 56 bones.

The size of elements in BoneMap updates when changing this property in it's assigned SkeletonProfile.


int group_size = 0 🔗

  • void set_group_size(value: int)

  • int get_group_size()

The amount of groups of bones in retargeting section's BoneMap editor. For example, SkeletonProfileHumanoid has 4 groups.

This property exists to separate the bone list into several sections in the editor.


StringName root_bone = &"" 🔗

Un nombre de hueso que se utilizará como hueso raíz en AnimationTree. Este debería ser el hueso del padre de las caderas que existe en el origen del mundo.


StringName scale_base_bone = &"" 🔗

Un nombre de hueso que utilizará la altura del modelo como coeficiente para la normalización. Por ejemplo, SkeletonProfileHumanoid lo define como Hips.


Descripciones de Métodos

int find_bone(bone_name: StringName) const 🔗

Devuelve el índice del hueso que coincide con bone_name como su nombre.


StringName get_bone_name(bone_idx: int) const 🔗

Returns the name of the bone at bone_idx that will be the key name in the BoneMap.

In the retargeting process, the returned bone name is the bone name of the target skeleton.


StringName get_bone_parent(bone_idx: int) const 🔗

Devuelve el nombre del hueso que es el padre del hueso en bone_idx. El resultado está vacío si el hueso no tiene padre.


StringName get_bone_tail(bone_idx: int) const 🔗

Devuelve el nombre del hueso que es la cola del hueso en bone_idx.


StringName get_group(bone_idx: int) const 🔗

Devuelve el grupo del hueso en bone_idx.


StringName get_group_name(group_idx: int) const 🔗

Devuelve el nombre del grupo en group_idx que será el grupo de dibujo en el editor de BoneMaps.


Vector2 get_handle_offset(bone_idx: int) const 🔗

Devuelve el desplazamiento del hueso en bone_idx que será la posición del botón en el editor de BoneMaps.

Este es el desplazamiento con origen en la esquina superior izquierda del cuadrado.


Transform3D get_reference_pose(bone_idx: int) const 🔗

Devuelve la transformación de pose de referencia para el hueso bone_idx.


TailDirection get_tail_direction(bone_idx: int) const 🔗

Devuelve la dirección de la cola del hueso en bone_idx.


Texture2D get_texture(group_idx: int) const 🔗

Devuelve la textura del grupo en group_idx que será la imagen de fondo del grupo de dibujo en el editor de BoneMaps.


bool is_required(bone_idx: int) const 🔗

Returns whether the bone at bone_idx is required for retargeting.

This value is used by the bone map editor. If this method returns true, and no bone is assigned, the handle color will be red on the bone map editor.


void set_bone_name(bone_idx: int, bone_name: StringName) 🔗

Establece el nombre del hueso en bone_idx que será el nombre clave en el BoneMap.

En el proceso de retargeting, el nombre del hueso de ajuste es el nombre del hueso del esqueleto objetivo.


void set_bone_parent(bone_idx: int, bone_parent: StringName) 🔗

Establece el hueso con el nombre bone_parent como el padre del hueso en bone_idx. Si se pasa una string vacía, entonces el hueso no tiene padre.


void set_bone_tail(bone_idx: int, bone_tail: StringName) 🔗

Establece el hueso con el nombre bone_tail como la cola del hueso en bone_idx.


void set_group(bone_idx: int, group: StringName) 🔗

Establece el grupo del hueso en bone_idx.


void set_group_name(group_idx: int, group_name: StringName) 🔗

Establece el nombre del grupo en group_idx que será el grupo de dibujo en el editor de BoneMaps.


void set_handle_offset(bone_idx: int, handle_offset: Vector2) 🔗

Establece el desplazamiento del hueso en bone_idx que será la posición del botón en el editor de BoneMaps.

Este es el desplazamiento con origen en la esquina superior izquierda del cuadrado.


void set_reference_pose(bone_idx: int, bone_name: Transform3D) 🔗

Establece la transformación de pose de referencia para el hueso bone_idx.


void set_required(bone_idx: int, required: bool) 🔗

Establece el estado requerido para el hueso bone_idx a required.


void set_tail_direction(bone_idx: int, tail_direction: TailDirection) 🔗

Establece la dirección de la cola del hueso en bone_idx.

Nota: Esto solo especifica el método de cálculo. Las coordenadas reales requeridas deben almacenarse en un esqueleto externo, por lo que el cálculo en sí debe realizarse externamente.


void set_texture(group_idx: int, texture: Texture2D) 🔗

Establece la textura del grupo en group_idx que será la imagen de fondo del grupo de dibujo en el editor de BoneMaps.