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...
SplineIK3D
继承: ChainIK3D < IKModifier3D < SkeletonModifier3D < Node3D < Node < Object
用于沿 Path3D 对齐骨骼的 SkeletonModifier3D。
描述
一种用于沿 Path3D(3D路径)对齐骨骼的 SkeletonModifier3D(3D骨骼修改器)。拟合的平滑度取决于 Curve3D.bake_interval(曲线3D的烘焙间隔)。
如果你希望 Path3D 附着在某个特定的骨骼上,建议将 ModifierBoneTarget3D(修改器骨骼目标3D)放在 SkeletonModifier3D 列表(Skeleton3D 的子节点)中 SplineIK3D 的前面,然后将 Path3D 作为 ModifierBoneTarget3D 的子节点放置。
骨骼的扭转由 Curve3D.get_point_tilt()(曲线3D获取点倾斜度)方法决定。
如果根骨骼关节与 Curve3D(曲线3D)的起点是分离的,它会假设两者之间存在一条直线段。这意味着,指向 Curve3D 起点的向量,其优先级会高于沿 Curve3D 的最短交点。
如果末端骨骼关节超出了路径的长度,它会尽可能地向着 Curve3D 的终点弯曲。
注意: 该类中的所有方法都带有一个 index(索引)参数。如果 IK(反向动力学)有多个条目(例如 settings//root_bone_name),该参数用于指定要返回哪一个设置列表条目。
属性
|
方法
get_path_3d(index: int) const |
|
get_tilt_fade_in(index: int) const |
|
get_tilt_fade_out(index: int) const |
|
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) |
属性说明
设置的数量。
方法说明
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,则当它们彼此分离时,倾斜角度会在从 Curve3D 起始点起的 size 个起始骨骼之间进行插值计算。
如果 size 等于 0,则根骨骼头部和 Curve3D 起始点之间的倾斜角度将与 Curve3D 起始点的倾斜角度保持一致。
如果 size 小于 0,则根骨骼和 Curve3D 起始点之间的倾斜角度为 0.0。
void set_tilt_fade_out(index: int, size: int) 🔗
如果 size 大于 0,则当它们彼此分离时,倾斜角度会在从 Curve3D 终点起的 size 个末端骨骼之间进行插值计算。
如果 size 等于 0,则末端骨骼尾部与 Curve3D 终点之间的倾斜角度将与 Curve3D 终点的倾斜角度保持一致。
如果 size 小于 0,则末端骨骼与 Curve3D 终点之间的倾斜角度为 0.0。