AimModifier3D

继承: BoneConstraint3D < SkeletonModifier3D < Node3D < Node < Object

AimModifier3D 会旋转骨骼,让它看向某个目标。

描述

这是 LookAtModifier3D 的简易版本,只允许骨骼指向参考项,不带角度限制、基于时间的插值等高级选项。

功能虽简,但实现了无需欧拉值的平滑跟踪,见 set_use_euler()

属性

int

setting_count

0

方法

BoneAxis

get_forward_axis(index: int) const

Axis

get_primary_rotation_axis(index: int) const

bool

is_relative(index: int) const

bool

is_using_euler(index: int) const

bool

is_using_secondary_rotation(index: int) const

void

set_forward_axis(index: int, axis: BoneAxis)

void

set_primary_rotation_axis(index: int, axis: Axis)

void

set_relative(index: int, enabled: bool)

void

set_use_euler(index: int, enabled: bool)

void

set_use_secondary_rotation(index: int, enabled: bool)


属性说明

int setting_count = 0 🔗

  • void set_setting_count(value: int)

  • int get_setting_count()

修改器中设置的数量。


方法说明

BoneAxis get_forward_axis(index: int) const 🔗

返回骨骼的向前轴。


Axis get_primary_rotation_axis(index: int) const 🔗

返回第一个旋转的转轴。仅在 is_using_euler()true 时启用。


bool is_relative(index: int) const 🔗

如果索引为 index 的设置启用了相对选项,则返回 true


bool is_using_euler(index: int) const 🔗

如果提供的旋转使用欧拉值则返回 true


bool is_using_secondary_rotation(index: int) const 🔗

如果提供的旋转是根据两个轴得到的,则返回 true。仅在 is_using_euler()true 时启用。


void set_forward_axis(index: int, axis: BoneAxis) 🔗

设置骨骼的向前轴。


void set_primary_rotation_axis(index: int, axis: Axis) 🔗

设置第一个旋转的转轴。仅在 is_using_euler()true 时启用。


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

将索引为 index 的设置的相对选项设置为 enabled

如果将 enabled 设置为 true,则旋转将相对于该姿势应用。

如果将 enabled 设置为 false,则旋转将相对于静止状态应用。这意味着用 AimModifier3D 的结果替换当前姿势。


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

如果将 enabled 设为 true,则提供的旋转使用欧拉值。

如果将 enabled 设为 false,则提供的旋转使用根据向前轴向量与指向参考的向量生成的旋转弧。


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

如果将 enabled 设为 true,则提供的旋转是根据两个轴得到的,仅在 is_using_euler()true 时启用。