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...
SkeletonProfile
Наследует: Resource < RefCounted < Object
Наследуется от: SkeletonProfileHumanoid
Базовый класс для профиля виртуального скелета, используемого в качестве цели для перенацеливания.
Описание
Этот ресурс используется в EditorScenePostImport. Некоторые параметры ссылаются на кости в Skeleton3D, Skin, Animation, а некоторые другие узлы переписываются на основе параметров SkeletonProfile.
Примечание: Эти параметры необходимо устанавливать только при создании пользовательского профиля. В SkeletonProfileHumanoid они определены внутренне как значения, доступные только для чтения.
Обучающие материалы
Свойства
|
||
|
||
|
||
|
Методы
find_bone(bone_name: StringName) const |
|
get_bone_name(bone_idx: int) const |
|
get_bone_parent(bone_idx: int) const |
|
get_bone_tail(bone_idx: int) const |
|
get_group_name(group_idx: int) const |
|
get_handle_offset(bone_idx: int) const |
|
get_reference_pose(bone_idx: int) const |
|
get_tail_direction(bone_idx: int) const |
|
get_texture(group_idx: int) const |
|
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) |
Сигналы
profile_updated() 🔗
Этот сигнал выдается при изменении значения в профиле. Он используется для обновления имени ключа в BoneMap и перерисовки редактора BoneMap.
Примечание: Этот сигнал не подключен напрямую к редактору для упрощения ссылки, вместо этого он передается редактору через BoneMap.
Перечисления
enum TailDirection: 🔗
TailDirection TAIL_DIRECTION_AVERAGE_CHILDREN = 0
Направление к средним координатам костных детей.
TailDirection TAIL_DIRECTION_SPECIFIC_CHILD = 1
Направление к координатам указанного ребенка кости.
TailDirection TAIL_DIRECTION_END = 2
Направление не рассчитано.
Описания свойств
Количество костей в редакторе BoneMap раздела перенацеливания. Например, SkeletonProfileHumanoid имеет 56 костей.
Размер элементов в BoneMap обновляется при изменении этого свойства в назначенном ему SkeletonProfile.
Количество групп костей в редакторе BoneMap раздела перенацеливания. Например, SkeletonProfileHumanoid имеет 4 группы.
Это свойство существует для разделения списка костей на несколько разделов в редакторе.
StringName root_bone = &"" 🔗
void set_root_bone(value: StringName)
StringName get_root_bone()
Имя кости, которая будет использоваться как корневая кость в AnimationTree. Это должна быть кость родителя бедер, которая существует в начале координат мира.
StringName scale_base_bone = &"" 🔗
void set_scale_base_bone(value: StringName)
StringName get_scale_base_bone()
Имя кости, которое будет использовать высоту модели как коэффициент для нормализации. Например, SkeletonProfileHumanoid определяет ее как Hips.
Описания метода
int find_bone(bone_name: StringName) const 🔗
Возвращает индекс кости, имя которого совпадает с bone_name.
StringName get_bone_name(bone_idx: int) const 🔗
Возвращает имя кости в bone_idx, которое будет ключевым именем в BoneMap.
В процессе перенацеливания возвращаемое имя кости является именем кости целевого скелета.
StringName get_bone_parent(bone_idx: int) const 🔗
Возвращает имя кости, которая является родителем кости в bone_idx. Результат пустой, если у кости нет родителя.
StringName get_bone_tail(bone_idx: int) const 🔗
Возвращает имя кости, которая является хвостом кости по адресу bone_idx.
StringName get_group(bone_idx: int) const 🔗
Возвращает группу кости по параметру bone_idx.
StringName get_group_name(group_idx: int) const 🔗
Возвращает имя группы в group_idx, которая будет группой рисования в редакторе BoneMap.
Vector2 get_handle_offset(bone_idx: int) const 🔗
Возвращает смещение кости в bone_idx, которое будет позицией кнопки в редакторе BoneMap.
Это смещение с началом в левом верхнем углу квадрата.
Transform3D get_reference_pose(bone_idx: int) const 🔗
Возвращает преобразование опорной позы для кости bone_idx.
TailDirection get_tail_direction(bone_idx: int) const 🔗
Возвращает направление хвоста кости в bone_idx.
Texture2D get_texture(group_idx: int) const 🔗
Возвращает текстуру группы в group_idx, которая будет фоновым изображением группы рисования в редакторе BoneMap.
bool is_required(bone_idx: int) const 🔗
Возвращает, требуется ли кость в bone_idx для перенацеливания.
Это значение используется редактором карты костей. Если этот метод возвращает true и кость не назначена, цвет ручки будет красным в редакторе карты костей.
void set_bone_name(bone_idx: int, bone_name: StringName) 🔗
Устанавливает имя кости в bone_idx, которое будет ключевым именем в BoneMap.
В процессе перенацеливания имя кости настройки — это имя кости целевого скелета.
void set_bone_parent(bone_idx: int, bone_parent: StringName) 🔗
Устанавливает кость с именем bone_parent как родительскую для кости с bone_idx. Если передана пустая строка, то у кости нет родителя.
void set_bone_tail(bone_idx: int, bone_tail: StringName) 🔗
Устанавливает кость с именем bone_tail в качестве хвоста кости с координатами bone_idx.
void set_group(bone_idx: int, group: StringName) 🔗
Устанавливает группу кости в bone_idx.
void set_group_name(group_idx: int, group_name: StringName) 🔗
Задает имя группы в group_idx, которая будет группой рисования в редакторе BoneMap.
void set_handle_offset(bone_idx: int, handle_offset: Vector2) 🔗
Устанавливает смещение кости в bone_idx, которое будет позицией кнопки в редакторе BoneMap.
Это смещение с началом в левом верхнем углу квадрата.
void set_reference_pose(bone_idx: int, bone_name: Transform3D) 🔗
Устанавливает преобразование опорной позы для кости bone_idx.
void set_required(bone_idx: int, required: bool) 🔗
Устанавливает требуемый статус для кости bone_idx на required.
void set_tail_direction(bone_idx: int, tail_direction: TailDirection) 🔗
Устанавливает направление хвоста кости в bone_idx.
Примечание: Это только указывает метод расчета. Фактические требуемые координаты должны храниться во внешнем скелете, поэтому сам расчет должен выполняться извне.
void set_texture(group_idx: int, texture: Texture2D) 🔗
Устанавливает текстуру группы в group_idx, которая будет фоновым изображением группы рисования в редакторе BoneMap.