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.