使用指南
数学运算 / 旋转 / Quat节点
数学运算 / 旋转 / Quat 节点手册,包含 39 个节点的用途、引脚、使用场景和注意事项。
学习目标
处理数值、向量、矩阵、颜色、矩形和旋转等游戏开发高频数学数据。
覆盖范围
- 节点数量:39
- 分类路径:数学运算 / 旋转 / Quat
典型使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
通用注意事项
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
节点索引
| 节点 | 节点 ID | 输入/输出 | 执行方式 |
|---|---|---|---|
| 拆分 Quat | quatBreak | 1 / 4 | 立即继续 |
| 朝向逼近 | quatRotateTowards | 3 / 1 | 立即继续 |
| 复制 Quat | quatCopy | 3 / 2 | 立即继续 |
| 构造 Quat | quatCreate | 4 / 1 | 立即继续 |
| 归一化 Quat | quatNormalize | 1 / 1 | 立即继续 |
| 获取单位四元数 | quatGetIdentity | 0 / 1 | 立即继续 |
| 获取轴角 | quatGetAxisAngle | 1 / 2 | 立即继续 |
| 计算 W 分量 | quatCalculateW | 1 / 1 | 立即继续 |
| 克隆 Quat | quatClone | 1 / 1 | 立即继续 |
| 欧拉角转四元数 | quatFromEuler | 3 / 1 | 立即继续 |
| 绕 X 轴旋转 | quatRotateX | 2 / 1 | 立即继续 |
| 绕 Y 轴旋转 | quatRotateY | 2 / 1 | 立即继续 |
| 绕 Z 轴旋转 | quatRotateZ | 2 / 1 | 立即继续 |
| 绕轴旋转(本地) | quatRotateAroundLocal | 3 / 1 | 立即继续 |
| 绕轴旋转(世界) | quatRotateAround | 3 / 1 | 立即继续 |
| 三轴构造四元数 | quatFromAxes | 3 / 1 | 立即继续 |
| 设置 Quat | quatSet | 6 / 2 | 立即继续 |
| 视角方向构造四元数 | quatFromViewUp | 2 / 1 | 立即继续 |
| 四元数标量乘 | quatMultiplyScalar | 2 / 1 | 立即继续 |
| 四元数乘法 | quatMultiply | 2 / 1 | 立即继续 |
| 四元数点积 | quatDot | 2 / 1 | 立即继续 |
| 四元数共轭 | quatConjugate | 1 / 1 | 立即继续 |
| 四元数夹角 | quatAngle | 2 / 1 | 立即继续 |
| 四元数近似相等 | quatEquals | 3 / 1 | 立即继续 |
| 四元数求逆 | quatInvert | 1 / 1 | 立即继续 |
| 四元数球面插值 | quatSlerp | 3 / 1 | 立即继续 |
| 四元数球面二次插值 | quatSqlerp | 5 / 1 | 立即继续 |
| 四元数缩放相加 | quatScaleAndAdd | 3 / 1 | 立即继续 |
| 四元数线性插值 | quatLerp | 3 / 1 | 立即继续 |
| 四元数严格相等 | quatStrictEquals | 2 / 1 | 立即继续 |
| 四元数长度 | quatLength | 1 / 1 | 立即继续 |
| 四元数长度平方 | quatLengthSqr | 1 / 1 | 立即继续 |
| 四元数转欧拉角 | quatToEuler | 1 / 1 | 立即继续 |
| 提取 X 轴 | quatToAxisX | 1 / 1 | 立即继续 |
| 提取 Y 轴 | quatToAxisY | 1 / 1 | 立即继续 |
| 提取 Z 轴 | quatToAxisZ | 1 / 1 | 立即继续 |
| 向量间旋转 | quatRotationTo | 2 / 1 | 立即继续 |
| 轴角转四元数 | quatFromAxisAngle | 2 / 1 | 立即继续 |
| Z 轴角度转四元数 | quatFromAngleZ | 1 / 1 | 立即继续 |
拆分 Quat
拆分四元数:将一个四元数拆分为 x、y、z、w 四个数值分量。 不修改输入四元数。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatBreak |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 待拆分的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
x | X | 数据 | number | X 分量 | - | 可选 |
y | Y | 数据 | number | Y 分量 | - | 可选 |
z | Z | 数据 | number | Z 分量 | - | 可选 |
w | W | 数据 | number | W 分量 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
朝向逼近
朝向逼近:将当前旋转从 from 向 to 方向旋转,最大步进角度为 maxStep(角度制)。 适合实现角色平滑转向目标的效果,例如怪物慢慢转向玩家方向。maxStep 控制转向速度,值越大转得越快。如果 from 与 to 之间的角度小于 maxStep,直接返回 to。角度单位为度(degree)。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotateTowards |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
from | 起始 | 数据 | quaternion | 起始四元数 当前旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
to | 目标 | 数据 | quaternion | 目标四元数 目标旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
maxStep | 最大步进(度) | 数据 | number | 最大步进角度 单位为度 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 逼近后的旋转 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
复制 Quat
复制四元数:将源四元数的值复制到目标四元数。副作用节点,会直接修改目标实例。 执行后透传目标四元数引用。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatCopy |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
quaternion | 目标 | 数据 | quaternion | 目标四元数 被修改的四元数实例 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
source | 源 | 数据 | quaternion | 源四元数 提供值的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
quaternion | 目标 | 数据 | quaternion | 目标四元数 被修改后的目标四元数引用 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
构造 Quat
构造四元数:根据给定的 x、y、z、w 分量创建一个新的四元数。 返回全新的 Quat 实例,不会修改任何已有四元数。默认值 w=1 构成单位四元数(无旋转)。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatCreate |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
x | X | 数据 | number | X 分量 新四元数的 X 分量 | 输入框 默认值:0 | 必填 |
y | Y | 数据 | number | Y 分量 新四元数的 Y 分量 | 输入框 默认值:0 | 必填 |
z | Z | 数据 | number | Z 分量 新四元数的 Z 分量 | 输入框 默认值:0 | 必填 |
w | W | 数据 | number | W 分量 新四元数的 W 分量(默认值 1) | 输入框 默认值:1 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 构造的新四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
归一化 Quat
归一化四元数:返回归一化后的单位四元数。 零四元数 (0,0,0,0) 输入时返回零四元数,而不是 identity。大多数旋转操作要求输入为单位四元数。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatNormalize |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | 四元数 | 数据 | quaternion | 四元数 待归一化的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 归一化后的单位四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
获取单位四元数
获取单位四元数:返回 Quat(0, 0, 0, 1),表示无旋转状态。 等价于 cc.Quat.IDENTITY。游戏开发中常用于初始化角色的旋转状态,或在需要”不做任何旋转”时作为起点。单位四元数 [0, 0, 0, 1] 是四元数乘法中的”1”(恒等元素),任何四元数乘以它都不会改变。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatGetIdentity |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
无。
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 单位四元数 | 数据 | quaternion | 单位四元数 返回 Quat(0, 0, 0, 1) | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
获取轴角
获取轴角:将四元数分解为旋转轴与旋转角度(弧度)。 旋转角度单位为弧度。零旋转时轴可能无意义。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatGetAxisAngle |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 待分解的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
axis | 旋转轴 | 数据 | vector3 | 旋转轴 归一化的旋转轴向量 | - | 可选 |
radians | 角度(弧度) | 数据 | number | 旋转角度 弧度制 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
计算 W 分量
计算 W 分量:根据四元数的 x、y、z 分量重新计算 w,使其成为单位四元数。 前提:输入四元数的 x²+y²+z² ≤ 1(即已归一化)。w = sqrt(1 - x² - y² - z²)。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatCalculateW |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 输入必须已归一化(x²+y²+z² ≤ 1) | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 重新计算 w 后的四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
克隆 Quat
克隆四元数:返回一个与输入四元数相同值的新四元数实例。 不修改输入四元数。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatClone |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 待克隆的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 克隆的新四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
欧拉角转四元数
欧拉角转四元数:根据欧拉角(角度制)创建四元数。 游戏开发中最常用的转换节点:在编辑器的 Transform 组件中看到的旋转值(X、Y、Z 角度)就是欧拉角。通过此节点可以将这些直观的角度值转换为四元数用于旋转计算。角度单位为度(degree),旋转顺序为 YZX。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatFromEuler |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
x | X (度) | 数据 | number | 绕 X 轴旋转角度 单位为度 | 输入框 默认值:0 | 必填 |
y | Y (度) | 数据 | number | 绕 Y 轴旋转角度 单位为度 | 输入框 默认值:0 | 必填 |
z | Z (度) | 数据 | number | 绕 Z 轴旋转角度 单位为度 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 四元数 | 数据 | quaternion | 四元数 从欧拉角构造的四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
绕 X 轴旋转
绕 X 轴旋转:在现有四元数基础上绕 X 轴增量旋转。 角度单位为弧度。游戏开发中常用于”点头”动作或俯仰(Pitch)控制,例如角色抬头看天空或低头看地面。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotateX |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 基础旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
radians | 弧度 | 数据 | number | 旋转弧度 绕 X 轴的增量旋转角度(弧度) | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
绕 Y 轴旋转
绕 Y 轴旋转:在现有四元数基础上绕 Y 轴增量旋转。 角度单位为弧度。游戏开发中常用于”左右看”动作或偏航(Yaw)控制,例如角色左顾右盼或转身。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotateY |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 基础旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
radians | 弧度 | 数据 | number | 旋转弧度 绕 Y 轴的增量旋转角度(弧度) | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
绕 Z 轴旋转
绕 Z 轴旋转:在现有四元数基础上绕 Z 轴增量旋转。 角度单位为弧度。游戏开发中常用于”歪头”动作或翻滚(Roll)控制,例如角色侧身或倾斜。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotateZ |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 基础旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
radians | 弧度 | 数据 | number | 旋转弧度 绕 Z 轴的增量旋转角度(弧度) | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
绕轴旋转(本地)
绕轴旋转(本地空间):在本地空间中绕指定轴增量旋转。 角度单位为弧度。旋转轴应已归一化。适合实现物体绕自身轴旋转的效果,例如车轮转动或角色自转。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotateAroundLocal |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 基础旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
axis | 旋转轴 | 数据 | vector3 | 旋转轴 本地空间旋转轴(应已归一化) | 可编辑控件 默认值:[0,0,0] | 必填 |
radians | 弧度 | 数据 | number | 旋转弧度 绕轴的增量旋转角度(弧度) | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
绕轴旋转(世界)
绕轴旋转(世界空间):在世界空间中绕指定轴增量旋转。 角度单位为弧度。旋转轴应已归一化。适合实现相机围绕目标旋转的效果,例如第三人称游戏中相机围绕角色旋转。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotateAround |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 基础旋转 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
axis | 旋转轴 | 数据 | vector3 | 旋转轴 世界空间旋转轴(应已归一化) | 可编辑控件 默认值:[0,0,0] | 必填 |
radians | 弧度 | 数据 | number | 旋转弧度 绕轴的增量旋转角度(弧度) | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
三轴构造四元数
三轴构造四元数:根据三个正交归一化轴向量(X 轴、Y 轴、Z 轴)构造旋转四元数。 适合从物体的三个本地坐标轴还原旋转。例如,给定了物体的朝右、朝上和朝前方向,即可计算出完整的旋转。前提:三个轴向量必须正交且已归一化,非正交输入将导致结果不正确。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatFromAxes |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
xAxis | X 轴 | 数据 | vector3 | X 轴向量 必须正交且已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
yAxis | Y 轴 | 数据 | vector3 | Y 轴向量 必须正交且已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
zAxis | Z 轴 | 数据 | vector3 | Z 轴向量 必须正交且已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 四元数 | 数据 | quaternion | 四元数 从三轴构造的旋转四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
设置 Quat
设置四元数:将目标四元数的分量设置为指定的 x、y、z、w 值。副作用节点,会直接修改目标实例。 执行后透传目标四元数引用。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatSet |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
quaternion | 目标 | 数据 | quaternion | 目标四元数 被修改的四元数实例 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
x | X | 数据 | number | X 分量 | 输入框 默认值:0 | 可选 |
y | Y | 数据 | number | Y 分量 | 输入框 默认值:0 | 可选 |
z | Z | 数据 | number | Z 分量 | 输入框 默认值:0 | 可选 |
w | W | 数据 | number | W 分量 | 输入框 默认值:1 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
quaternion | 目标 | 数据 | quaternion | 目标四元数 被修改后的目标四元数引用 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
视角方向构造四元数
视角方向构造四元数:根据前向方向和上方向构造旋转四元数。 游戏开发中常用于相机跟随或角色朝向设置。例如,让相机注视某个目标的同时保持水平不倾斜。前提:前向方向和上方向必须已归一化。上方向默认为 Vec3(0, 1, 0),两个方向不应平行。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatFromViewUp |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
view | 前向方向 | 数据 | vector3 | 前向方向 必须已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
up | 上方向 | 数据 | vector3 | 上方向 必须已归一化,默认 (0, 1, 0)。不应与前向方向平行 | 可编辑控件 默认值:[0,0,0] | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 四元数 | 数据 | quaternion | 四元数 从视角方向构造的旋转四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数标量乘
四元数标量乘法:将四元数的每个分量乘以一个标量。 注意:结果通常不再是单位四元数,如需用于旋转请后接 QuatNormalize。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatMultiplyScalar |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 待缩放的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
scalar | 标量 | 数据 | number | 标量 缩放因子 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 缩放后的四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数乘法
四元数乘法:计算两个四元数的 Hamilton 积,用于组合多个旋转。 例如,先让角色旋转身体面向敌人,再让头部转向目标点。顺序是”先应用 a 的旋转,再应用 b 的旋转”。注意:四元数乘法不满足交换律,A×B 和 B×A 的结果不同。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatMultiply |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 四元数 A 第一个四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 四元数 B 第二个四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 a * b 的 Hamilton 积 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数点积
四元数点积:计算两个四元数的逐分量点积。 结果绝对值接近 1 表示两个旋转方向接近,接近 0 表示差异很大。常用于判断两个朝向的相似程度。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatDot |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 四元数 A | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 四元数 B | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
dot | 点积 | 数据 | number | 点积 四元数逐分量点积 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数共轭
四元数共轭:返回输入四元数的共轭(x, y, z 取反,w 不变)。 对单位四元数,共轭等价于逆,表示反向旋转。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatConjugate |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | 四元数 | 数据 | quaternion | 四元数 待求共轭的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 共轭四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数夹角
四元数夹角:返回两个单位四元数之间的夹角(弧度),即两个旋转之间的差异大小。 游戏开发中可用于判断两个朝向的接近程度——夹角接近 0 表示朝向几乎一致。输入应为归一化四元数。返回值范围 [0, π]。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatAngle |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 四元数 A 应为单位四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 四元数 B 应为单位四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
angle | 夹角(弧度) | 数据 | number | 夹角 两个四元数之间的夹角,单位为弧度 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数近似相等
四元数近似相等:在 epsilon 容差范围内逐分量比较两个四元数是否近似相等。 默认 epsilon = 0.000001。适用于浮点运算后的结果比较。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatEquals |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 四元数 A | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 四元数 B | 可编辑控件 默认值:[0,0,0,1] | 必填 |
epsilon | 容差 | 数据 | number | 容差 比较精度,默认 0.000001 | 输入框 默认值:0.000001 | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
isEqual | 相等 | 数据 | boolean | 相等 是否在容差范围内近似相等 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数求逆
四元数求逆:返回输入四元数的逆,用于撤销旋转。 例如,将角色旋转了 90 度后,用逆四元数就可以恢复原状。对单位四元数,逆等价于共轭(x, y, z 取反)。逆四元数与原四元数相乘得到单位四元数(无旋转)。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatInvert |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | 四元数 | 数据 | quaternion | 四元数 待求逆的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 逆四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数球面插值
四元数球面线性插值:在四元数球面上进行等角速度插值。 推荐用于旋转插值,结果始终为单位四元数,动画过渡更平滑。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatSlerp |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 起始四元数 t=0 时的值 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 结束四元数 t=1 时的值 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
t | T | 数据 | number | 插值系数 范围 [0, 1] | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 球面插值结果 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数球面二次插值
四元数球面二次插值:在四个控制四元数之间进行平滑的球面二次插值。 适用于动画关键帧的平滑过渡,避免线性插值造成的旋转加速/减速。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatSqlerp |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 控制四元数 A | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 控制四元数 B | 可编辑控件 默认值:[0,0,0,1] | 必填 |
c | C | 数据 | quaternion | 控制四元数 C | 可编辑控件 默认值:[0,0,0,1] | 必填 |
d | D | 数据 | quaternion | 控制四元数 D | 可编辑控件 默认值:[0,0,0,1] | 必填 |
t | T | 数据 | number | 插值系数 范围 [0, 1] | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 球面二次插值结果 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数缩放相加
四元数缩放相加:计算 a + b * scale 的逐分量结果。 常用于四元数积分或动画混合中间步骤。结果通常不再是单位四元数。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatScaleAndAdd |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 四元数 A 基础四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 四元数 B 缩放后叠加的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
scale | 缩放 | 数据 | number | 缩放因子 对 B 的缩放比例 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 a + b * scale | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数线性插值
四元数线性插值:对两个四元数进行逐分量线性插值。 注意:Lerp 不保证结果仍为单位四元数。旋转插值请优先使用 QuatSlerp;如必须使用 Lerp,建议后接 QuatNormalize。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatLerp |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 起始四元数 t=0 时的值 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 结束四元数 t=1 时的值 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
t | T | 数据 | number | 插值系数 范围 [0, 1] | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 结果 | 数据 | quaternion | 结果四元数 线性插值结果(可能非单位四元数) | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数严格相等
四元数严格相等:逐分量严格比较两个四元数是否完全相等。 浮点精度敏感,建议优先使用近似比较 QuatEquals。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatStrictEquals |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | A | 数据 | quaternion | 四元数 A | 可编辑控件 默认值:[0,0,0,1] | 必填 |
b | B | 数据 | quaternion | 四元数 B | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
isEqual | 相等 | 数据 | boolean | 相等 是否严格相等 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数长度
四元数长度:返回四元数的模长,用于判断四元数是否是有效的旋转。 单位四元数的长度为 1。如果长度不为 1,四元数会导致非均匀缩放,不适合直接用于旋转。可用 归一化 节点修正。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatLength |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | 四元数 | 数据 | quaternion | 四元数 待计算长度的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
length | 长度 | 数据 | number | 长度 四元数的模长 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数长度平方
四元数长度平方:返回四元数模长的平方。 避免开方运算,适用于仅需比较大小的场景。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatLengthSqr |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | 四元数 | 数据 | quaternion | 四元数 待计算的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
lengthSqr | 长度² | 数据 | number | 长度平方 四元数模长的平方 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
四元数转欧拉角
四元数转欧拉角:将四元数转换为欧拉角(角度制)。 适合将旋转结果用于显示或调试,或者需要比较两个旋转是否接近时使用。输出为 Vec3,分量对应绕 X、Y、Z 轴的旋转角度。单位为度(degree),旋转顺序为 YZX。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatToEuler |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 待转换的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
euler | 欧拉角(度) | 数据 | vector3 | 欧拉角 Vec3(x°, y°, z°),旋转顺序 YZX | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
提取 X 轴
提取 X 轴方向:从四元数中提取旋转后的本地 X 轴方向向量,即物体当前的朝右方向。 等价于用四元数旋转 Vec3(1, 0, 0)。适合获取角色的右侧朝向,用于侧向移动或判断左右方向。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatToAxisX |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 表示旋转的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
axis | X 轴 | 数据 | vector3 | X 轴方向 旋转后的本地 X 轴 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
提取 Y 轴
提取 Y 轴方向:从四元数中提取旋转后的本地 Y 轴方向向量,即物体当前的朝上方向。 等价于用四元数旋转 Vec3(0, 1, 0)。适合获取角色的头顶朝向,用于判断上下方向。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatToAxisY |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 表示旋转的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
axis | Y 轴 | 数据 | vector3 | Y 轴方向 旋转后的本地 Y 轴 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
提取 Z 轴
提取 Z 轴方向:从四元数中提取旋转后的本地 Z 轴方向向量,即物体当前的朝前方向。 等价于用四元数旋转 Vec3(0, 0, 1)。游戏开发中最常用的朝向提取——用于获取角色正对着的方向,例如判断角色前方是否有敌人。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatToAxisZ |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
quaternion | 四元数 | 数据 | quaternion | 四元数 表示旋转的四元数 | 可编辑控件 默认值:[0,0,0,1] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
axis | Z 轴 | 数据 | vector3 | Z 轴方向 旋转后的本地 Z 轴 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
向量间旋转
向量间旋转:计算从方向 a 旋转到方向 b 的最短旋转四元数。 游戏开发中常用于让物体朝向目标方向,例如导弹追踪玩家时计算所需的旋转,或角色面向移动方向。前提:输入向量必须已归一化。对于反向向量(180° 旋转),结果可能不唯一。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatRotationTo |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
a | 起始方向 | 数据 | vector3 | 起始方向 必须已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
b | 目标方向 | 数据 | vector3 | 目标方向 必须已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 旋转 | 数据 | quaternion | 旋转四元数 从 a 到 b 的最短旋转 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
轴角转四元数
轴角转四元数:根据旋转轴和旋转角度(弧度)构造四元数。 适合描述”绕某个轴转多少度”的直观旋转,例如车轮绕水平轴旋转或风扇叶片绕竖直轴旋转。旋转轴应已归一化。角度单位为弧度。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatFromAxisAngle |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
axis | 旋转轴 | 数据 | vector3 | 旋转轴 应已归一化 | 可编辑控件 默认值:[0,0,0] | 必填 |
radians | 弧度 | 数据 | number | 旋转角度 弧度制 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 四元数 | 数据 | quaternion | 四元数 从轴角构造的四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。
Z 轴角度转四元数
Z 轴角度转四元数:根据绕 Z 轴的旋转角度(角度制)创建四元数。 角度单位为度(degree)。适用于 2D 旋转或绕 Z 轴的简化旋转场景。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | quatFromAngleZ |
| 分类 | 数学运算 |
| 二级分类 | 旋转 |
| 分组 | Quat |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
z | Z (度) | 数据 | number | 绕 Z 轴旋转角度 单位为度 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
result | 四元数 | 数据 | quaternion | 四元数 绕 Z 轴旋转的四元数 | - | 可选 |
使用场景
- 计算角色移动方向、距离和插值
- 处理 UI 尺寸、碰撞范围和颜色变化
- 组合旋转、矩阵和仿射变换
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 向量和矩阵节点要确认维度匹配。
- 角度、弧度、归一化等概念在不同节点中可能有不同约束。