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...
ChainIK3D
Успадковує: IKModifier3D < SkeletonModifier3D < Node3D < Node < Object
Успадковано від: IterateIK3D, SplineIK3D
SkeletonModifier3D для застосування оберненої кінематики до ланцюгів кісток, що містять довільну кількість кісток.
Опис
Base class of SkeletonModifier3D that automatically generates a joint list from the bones between the root bone and the end bone.
Note: All the methods in this class take an index parameter. This parameter specifies which setting list entry to return if the IK has multiple entries (e.g. settings/<index>/root_bone_name).
Методи
get_end_bone(index: int) const |
|
BoneDirection |
get_end_bone_direction(index: int) const |
get_end_bone_length(index: int) const |
|
String |
get_end_bone_name(index: int) const |
get_joint_bone(index: int, joint: int) const |
|
String |
get_joint_bone_name(index: int, joint: int) const |
get_joint_count(index: int) const |
|
get_root_bone(index: int) const |
|
String |
get_root_bone_name(index: int) const |
is_end_bone_extended(index: int) const |
|
void |
set_end_bone(index: int, bone: int) |
void |
set_end_bone_direction(index: int, bone_direction: BoneDirection) |
void |
set_end_bone_length(index: int, length: float) |
void |
set_end_bone_name(index: int, bone_name: String) |
void |
set_extend_end_bone(index: int, enabled: bool) |
void |
set_root_bone(index: int, bone: int) |
void |
set_root_bone_name(index: int, bone_name: String) |
Описи методів
int get_end_bone(index: int) const 🔗
Повертає індекс кінцевої кістки ланцюга кісток.
BoneDirection get_end_bone_direction(index: int) const 🔗
Повертає напрямок хвоста кінцевої кістки ланцюжка кісток, коли is_end_bone_extended() має значення true.
float get_end_bone_length(index: int) const 🔗
Повертає довжину кінця кісткового ланцюжка, коли is_end_bone_extended() має значення true.
String get_end_bone_name(index: int) const 🔗
Повертає назву кінцевої кістки ланцюжка кісток.
int get_joint_bone(index: int, joint: int) const 🔗
Повертає індекс кістки в joint у списку суглобів кісткового ланцюга.
String get_joint_bone_name(index: int, joint: int) const 🔗
Повертає назву кістки в joint у списку суглобів ланцюга кісток.
int get_joint_count(index: int) const 🔗
Повертає кількість з’єднань у списку з’єднань кісткового ланцюга.
int get_root_bone(index: int) const 🔗
Повертає індекс кореневої кістки ланцюга кісток.
String get_root_bone_name(index: int) const 🔗
Повертає назву кореневої кістки ланцюга кісток.
bool is_end_bone_extended(index: int) const 🔗
Повертає true, якщо кінцева кістка подовжена, щоб мати хвіст.
void set_end_bone(index: int, bone: int) 🔗
Встановлює кінцевий кістковий індекс кісткового ланцюга.
void set_end_bone_direction(index: int, bone_direction: BoneDirection) 🔗
Встановлює напрямок кінцевої кістки ланцюжка кісток, якщо is_end_bone_extended() має значення true.
void set_end_bone_length(index: int, length: float) 🔗
Встановлює довжину хвоста кінцевої кістки ланцюжка кісток, якщо is_end_bone_extended() має значення true.
void set_end_bone_name(index: int, bone_name: String) 🔗
Встановлює назву кінцевої кістки ланцюжка кісток.
Примітка: Кінцева кістка має бути кореневою кісткою або дочірньою кісткою кореневої кістки. Якщо вони однакові, хвіст потрібно розширити за допомогою set_extend_end_bone(), щоб змінити кістку.
void set_extend_end_bone(index: int, enabled: bool) 🔗
Якщо enabled має значення true, кінцева кістка подовжується, щоб мати хвіст.
Конфігурація розширеного хвоста призначається останньому елементу у списку суглобів. Іншими словами, якщо встановити enabled на false, конфігурація останнього елемента у списку суглобів не впливає на результат моделювання.
void set_root_bone(index: int, bone: int) 🔗
Встановлює індекс кореневої кістки кісткового ланцюга.
void set_root_bone_name(index: int, bone_name: String) 🔗
Встановлює назву кореневої кістки ланцюга кісток.