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.

SplineIK3D

Наследует: ChainIK3D < IKModifier3D < SkeletonModifier3D < Node3D < Node < Object

Модификатор SkeletonModifier3D для выравнивания костей вдоль пути Path3D.

Описание

SkeletonModifier3D для выравнивания костей вдоль Path3D. Плавность подгонки зависит от Curve3D.bake_interval.

Если вы хотите, чтобы Path3D прикреплялся к определенной кости, рекомендуется разместить ModifierBoneTarget3D перед SplineIK3D в списке SkeletonModifier3D (дочерние элементы Skeleton3D), а затем разместить Path3D в качестве дочернего элемента ModifierBoneTarget3D.

Скручивание кости определяется на основе Curve3D.get_point_tilt().

Если корневой сустав кости и начальная точка Curve3D разделены, предполагается, что между ними существует линейный отрезок. Это означает, что вектор, направленный к начальной точке Curve3D, имеет приоритет над кратчайшей точкой пересечения вдоль Curve3D.

Если длина конечного костного сустава превышает длину пути, он изгибается как можно ближе к конечной точке Curve3D.

Примечание: Все методы в этом классе принимают параметр index. Этот параметр указывает, какую запись списка настроек возвращать, если IK имеет несколько записей (например, settings/<index>/root_bone_name).

Свойства

int

setting_count

0

Методы

NodePath

get_path_3d(index: int) const

int

get_tilt_fade_in(index: int) const

int

get_tilt_fade_out(index: int) const

bool

is_tilt_enabled(index: int) const

void

set_path_3d(index: int, path_3d: NodePath)

void

set_tilt_enabled(index: int, enabled: bool)

void

set_tilt_fade_in(index: int, size: int)

void

set_tilt_fade_out(index: int, size: int)


Описания свойств

int setting_count = 0 🔗

  • void set_setting_count(value: int)

  • int get_setting_count()

Количество настроек.


Описания метода

NodePath get_path_3d(index: int) const 🔗

Возвращает путь узла объекта Path3D, описывающего путь.


int get_tilt_fade_in(index: int) const 🔗

Возвращает метод интерполяции наклона, используемый между корневой костью и начальной точкой Curve3D, когда они находятся на некотором расстоянии друг от друга. См. также set_tilt_fade_in().


int get_tilt_fade_out(index: int) const 🔗

Возвращает метод интерполяции наклона, используемый между конечной костью и конечной точкой Curve3D, когда они находятся на некотором расстоянии друг от друга. См. также set_tilt_fade_out().


bool is_tilt_enabled(index: int) const 🔗

Возвращает значение, если свойство наклона объекта Curve3D влияет на скручивание кости.


void set_path_3d(index: int, path_3d: NodePath) 🔗

Задает путь к узлу Path3D, описывающему путь.


void set_tilt_enabled(index: int, enabled: bool) 🔗

Определяет, должно ли свойство наклона объекта Curve3D влиять на скручивание кости.


void set_tilt_fade_in(index: int, size: int) 🔗

Если size больше 0, наклон интерполируется между size начальными костями от начальной точки Curve3D, когда они находятся на расстоянии друг от друга.

Если size равно 0, наклоны между головкой корневой кости и начальной точкой Curve3D объединяются с наклоном начальной точки Curve3D.

Если size меньше 0, наклоны между корневой костью и начальной точкой Curve3D равны 0.0.


void set_tilt_fade_out(index: int, size: int) 🔗

Если size больше 0, наклон интерполируется между size конечными костями от конечной точки Curve3D, когда они находятся на расстоянии друг от друга.

Если size равно 0, наклоны между хвостовой частью конечной кости и конечной точкой Curve3D объединяются с наклоном конечной точки Curve3D.

Если size меньше 0, наклоны между конечной костью и конечной точкой Curve3D равны 0.0.