使用指南
Cocos 组件 / 2D物理 / RelativeJoint2D节点
Cocos 组件 / 2D物理 / RelativeJoint2D 节点手册,包含 15 个节点的用途、引脚、使用场景和注意事项。
学习目标
访问 Cocos Creator 组件的属性、方法和事件,把引擎能力转成可视化工作流。
覆盖范围
- 节点数量:15
- 分类路径:Cocos 组件 / 2D物理 / RelativeJoint2D
典型使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
通用注意事项
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
- 部分组件能力受 Cocos Creator 版本限制,页面会标出版本字段。
节点索引
| 节点 | 节点 ID | 输入/输出 | 执行方式 |
|---|---|---|---|
| 获取关节类型 | relativeJoint2DGetType | 1 / 1 | 立即继续 |
| 获取角度偏移 | relativeJoint2DGetAngularOffset | 1 / 1 | 立即继续 |
| 获取所有属性 | relativeJoint2DGetProperties | 1 / 7 | 立即继续 |
| 获取线性偏移 | relativeJoint2DGetLinearOffset | 1 / 1 | 立即继续 |
| 获取修正系数 | relativeJoint2DGetCorrectionFactor | 1 / 1 | 立即继续 |
| 获取自动计算偏移 | relativeJoint2DGetAutoCalcOffset | 1 / 1 | 立即继续 |
| 获取最大扭矩 | relativeJoint2DGetMaxTorque | 1 / 1 | 立即继续 |
| 获取最大线性力 | relativeJoint2DGetMaxForce | 1 / 1 | 立即继续 |
| 设置角度偏移 | relativeJoint2DSetAngularOffset | 3 / 2 | 立即继续 |
| 设置所有属性 | relativeJoint2DSetProperties | 8 / 2 | 立即继续 |
| 设置线性偏移 | relativeJoint2DSetLinearOffset | 3 / 2 | 立即继续 |
| 设置修正系数 | relativeJoint2DSetCorrectionFactor | 3 / 2 | 立即继续 |
| 设置自动计算偏移 | relativeJoint2DSetAutoCalcOffset | 3 / 2 | 立即继续 |
| 设置最大扭矩 | relativeJoint2DSetMaxTorque | 3 / 2 | 立即继续 |
| 设置最大线性力 | relativeJoint2DSetMaxForce | 3 / 2 | 立即继续 |
获取关节类型
获取关节类型:返回 RelativeJoint2D 的关节类型枚举(EJoint2DType),对 RelativeJoint2D 始终返回 EJoint2DType.RELATIVE(值 7)。 节点价值:类型自描述、调试可读性、统一枚举链路与未来跨关节类型分支处理。 枚举含义:
- 0 None:未指定关节类型
- 1 DISTANCE:距离关节(DistanceJoint2D)——底层 Box2D RopeJoint,约束最大绳长
- 2 SPRING:弹簧关节(SpringJoint2D)——带弹性恢复力的距离约束
- 3 WHEEL:车轮关节(WheelJoint2D)——悬挂系统
- 4 MOUSE:鼠标关节(MouseJoint2D)——拖拽吸附
- 5 FIXED:固定关节(FixedJoint2D)——焊接两刚体
- 6 SLIDER:滑动关节(SliderJoint2D)——沿轴平移
- 7 RELATIVE:相对关节(RelativeJoint2D 始终为此值)——追踪相对位姿,底层 Box2D MotorJoint
- 8 HINGE:铰链关节(HingeJoint2D)——绕轴旋转
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetType |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
type | 关节类型 | 数据 | enum / EJoint2DType | 关节类型枚举 EJoint2DType 枚举值。RelativeJoint2D 始终返回 RELATIVE(值 7)。 0=None,1=DISTANCE(距离/绳长),2=SPRING(弹簧),3=WHEEL(车轮),4=MOUSE(鼠标拖拽),5=FIXED(固定焊接),6=SLIDER(滑动),7=RELATIVE(相对位姿追踪),8=HINGE(铰链旋转) | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取角度偏移
获取角度偏移:返回 RelativeJoint2D 的连接端刚体相对于当前刚体的目标角度偏移(angularOffset)。 单位:组件层按角度读写;底层创建 joint 与游戏运行时 setter 会自动转成弧度传给 Box2D MotorJoint。 默认值:0(度)。 重要:该节点读取到的值在不同情况下有不同含义:
- 当 autoCalcOffset=true 且设置了 connectedBody 时,返回”connectedBody 世界旋转欧拉 z - 当前节点世界旋转欧拉 z”(角度值)
- 当 autoCalcOffset=true 且未设置 connectedBody 时,退化为”世界零旋转 - 当前节点世界角度”
- 当 autoCalcOffset=false 时,返回手动配置的角度值
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetAngularOffset |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
angularOffset | 角度偏移 | 数据 | number | 角度偏移(角度制) 连接端刚体相对于当前刚体的目标角度偏移(角度值,默认 0)。 autoCalcOffset=true 时动态取”连接端世界角度 - 当前节点世界角度”;若未设 connectedBody 则退化为”世界零旋转 - 当前节点世界角度”。底层传给 Box2D 时自动转弧度。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取所有属性
一次性读出 RelativeJoint2D 的全部已节点化属性:最大线性力(maxForce)、最大扭矩(maxTorque)、修正系数(correctionFactor)、线性偏移(linearOffset)、角度偏移(angularOffset)、自动计算偏移(autoCalcOffset)、关节类型(type)。等同于连接多个 获取类节点,但只用一个节点即可。适合调试、日志或多路分发场景。 注意:linearOffset / angularOffset 在 autoCalcOffset=true 时返回动态计算值,详见对应 获取类节点说明。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetProperties |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
maxForce | 最大线性力 | 数据 | number | 最大线性力 关节追踪目标相对位置时可施加的最大线性力上限(默认 5)。 | - | 可选 |
maxTorque | 最大扭矩 | 数据 | number | 最大扭矩 关节追踪目标相对角度时可施加的最大扭矩上限(默认 0.7)。 | - | 可选 |
correctionFactor | 修正系数 | 数据 | number | 位置修正系数 每步物理解算向目标相对位姿修正的比例,常用范围 [0,1](默认 0.3)。 | - | 可选 |
linearOffset | 线性偏移 | 数据 | vector2 | 线性偏移 连接端刚体相对于当前刚体的目标线性偏移,默认 (0,0)。autoCalcOffset=true 时为动态计算值。 | - | 可选 |
angularOffset | 角度偏移 | 数据 | number | 角度偏移(角度制) 连接端刚体相对于当前刚体的目标角度偏移(角度值,默认 0)。autoCalcOffset=true 时为动态计算值。 | - | 可选 |
autoCalcOffset | 自动计算偏移 | 数据 | boolean | 自动计算偏移开关 true=动态计算 linearOffset / angularOffset;false=使用手动值。默认 true。 | - | 可选 |
type | 关节类型 | 数据 | enum / EJoint2DType | 关节类型枚举 EJoint2DType 枚举值。RelativeJoint2D 始终返回 RELATIVE(值 7)。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取线性偏移
获取线性偏移:返回 RelativeJoint2D 的连接端刚体相对于当前刚体的目标线性偏移(linearOffset,Vec2)。 默认值:(0, 0)。 重要:该节点读取到的值在不同情况下有不同含义:
- 当 autoCalcOffset=true 且设置了 connectedBody 时,返回”connectedBody 世界位置 - 当前节点世界位置”(动态计算值)
- 当 autoCalcOffset=true 且未设置 connectedBody 时,退化为”世界原点 - 当前节点世界位置”
- 当 autoCalcOffset=false 时,返回手动配置的内部 _linearOffset 值 手动设置后若保持自动模式开启,下一次读取可能不会返回刚写入的值。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetLinearOffset |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
linearOffset | 线性偏移 | 数据 | vector2 | 线性偏移 连接端刚体相对于当前刚体的目标线性偏移,默认 (0,0)。 autoCalcOffset=true 时返回动态世界差值,不一定等于手动配置值;若未设 connectedBody 则退化为”世界原点 - 当前节点世界位置”。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取修正系数
获取位置修正系数:返回 RelativeJoint2D 每步物理解算中向目标相对位姿修正的比例(correctionFactor)。 默认值:0.3。 说明:
- 常用范围 [0,1];数值越小越平滑但收敛更慢,越大越积极但可能更”硬”
- 它不是弹簧频率,也不是线性阻尼
- 引擎 setter 未做 clamp,超出 [0,1] 的行为由 Box2D 后端定义
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetCorrectionFactor |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
correctionFactor | 修正系数 | 数据 | number | 位置修正系数 每步物理解算向目标相对位姿修正的比例,常用范围 [0,1](默认 0.3)。越小越平滑但收敛慢,越大越积极但可能更”硬”。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取自动计算偏移
获取自动计算偏移开关:返回 RelativeJoint2D 的 autoCalcOffset 状态。 默认值:true。 语义:
- true:linearOffset / angularOffset getter 将动态返回当前两端的世界相对位置/角度差(若未设 connectedBody 则退化为相对世界原点/零旋转)
- false:linearOffset / angularOffset getter 回读并使用手动配置的内部值 注意:该开关本身不直接调用底层 joint setter,但会改变 linearOffset / angularOffset getter 的返回语义。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetAutoCalcOffset |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
autoCalcOffset | 自动计算偏移 | 数据 | boolean | 自动计算偏移开关 true=根据两端世界位置/旋转动态计算 linearOffset / angularOffset;false=使用手动配置值。默认 true。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取最大扭矩
获取最大扭矩:返回 RelativeJoint2D 关节追踪目标相对角度时可施加的最大扭矩上限(maxTorque)。 默认值:0.7。 说明:
- 该值对应 Box2D MotorJoint 的 SetMaxTorque,决定关节在每步物理模拟中允许使用的最大扭矩
- 值越大,旋转回正或姿态跟随越有力;值过小会导致角度修正缓慢
- 这不是节点自身角速度,也不是阻尼参数
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetMaxTorque |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
maxTorque | 最大扭矩 | 数据 | number | 最大扭矩 关节追踪目标相对角度时可施加的最大扭矩上限(默认 0.7)。值越大旋转跟随越有力,值过小则角度修正缓慢。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取最大线性力
获取最大线性力:返回 RelativeJoint2D 关节追踪目标相对位置时可施加的最大线性力上限(maxForce)。 默认值:5。 说明:
- 该值对应 Box2D MotorJoint 的 SetMaxForce,决定关节在每步物理模拟中允许使用的最大线性力
- 值越大,目标刚体越容易快速追上期望偏移;值过小则可能跟随缓慢或明显滞后
- 这不是持续恒定施加的外力,而是 MotorJoint 求解过程允许使用的上限
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DGetMaxForce |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
maxForce | 最大线性力 | 数据 | number | 最大线性力 关节追踪目标相对位置时可施加的最大线性力上限(默认 5)。值越大跟随越快,值过小则跟随缓慢。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置角度偏移
设置角度偏移:设置 RelativeJoint2D 的连接端刚体相对于当前刚体的目标角度偏移(angularOffset)。 单位:组件层按角度输入,底层创建 joint 与游戏运行时 setter 会自动转成弧度传给 Box2D MotorJoint。 默认值:0(度)。 注意:
- 设置类节点 更新内部 _angularOffset;若底层 joint 已创建,还会同步推送到后端
- 若 autoCalcOffset=true,获取类节点 仍会返回动态计算值;建议先关闭自动计算再设置固定角度偏移
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetAngularOffset |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
angularOffset | 角度偏移 | 数据 | number | 相对角度偏移 被跟随物体应该比目标”偏转多少度”。 比如想让挂件始终比角色倾斜 45°,偏移就是 45。 默认值:0(同角度)。单位:角度(°)。 注意:如果”自动计算偏移”开着,读到的值是当前实际相对角度,不是你设的固定值。 | 输入框 默认值:0 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置所有属性
批量修改 RelativeJoint2D 可写属性:聚合写入 autoCalcOffset、maxForce、maxTorque、correctionFactor、linearOffset、angularOffset。 说明:除 exe 与 relativeJoint2D 外,所有可写属性引脚默认不公开(isPublic: false),只有被显式公开且有值的属性才参与写入;未公开属性保持原值不变。 写入顺序:autoCalcOffset → maxForce → maxTorque → correctionFactor → linearOffset → angularOffset。 推荐用法:若需固定相对位姿,先公开并写入 autoCalcOffset=false,再公开并写入 linearOffset / angularOffset,可确保 offset 写入时已关闭自动计算模式。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetProperties |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
autoCalcOffset | 自动计算偏移 | 数据 | boolean | 自动算偏移 true(默认)= 自动根据两个物体的当前位置/角度算偏移。适合做”锁定当前位置”——启动时自动记住相对关系。 false = 使用你手动设置的位置/角度偏移。适合”保持固定相对位姿”——不管双方位置怎么变,都会努力回到你设的偏移。 默认值:true。 | 开关 默认值:true | 可选 默认隐藏 |
maxForce | 最大线性力 | 数据 | number | ”跟屁虫”的最大拉力 关节为了追上目标位置,最多能花多大的”力气”。 默认值:5。 值越大,物体跟随得越快、越紧;值越小,跟随越慢、越拖沓。 想象一下:狗绳——力气大(高)狗一跑立刻被拽住,力气小(低)则慢慢拉回来。 | 输入框 默认值:5 | 可选 默认隐藏 |
maxTorque | 最大扭矩 | 数据 | number | 旋转跟随的最大力度 关节为了追上目标角度,最多能花多大的”拧劲儿”。 默认值:0.7。 值越大,角度跟随越积极、回正越快。值越小,角度修正越慢。 适合控制”挂件”的旋转回正速度。 | 输入框 默认值:0.7 | 可选 默认隐藏 |
correctionFactor | 修正系数 | 数据 | number | 每帧”追多少” 每帧物理计算中,关节会把位置/角度误差的多少比例修正过来。范围 [0, 1]。 默认值:0.3。 数值小(比如 0.1)= 修正慢但很平滑,像缓缓飘过去的飞毯。数值大(比如 0.8)= 修正快但可能很”硬”,像磁铁啪的一下吸上去。 | 输入框 默认值:0.3 | 可选 默认隐藏 |
linearOffset | 线性偏移 | 数据 | vector2 | 相对位置偏移 被跟随物体应该待在我”哪个方向、多远”的位置。 比如想让挂件保持在角色右上方 1 米的位置,偏移就是 { x: 1, y: 1 }。 默认值:{ x: 0, y: 0 }(同一个位置)。 注意:如果”自动计算偏移”开着,读到的值是当前实际相对位置,不是你设的固定值。 | 可编辑控件 默认值:{“x”:0,“y”:0} | 可选 默认隐藏 |
angularOffset | 角度偏移 | 数据 | number | 相对角度偏移 被跟随物体应该比目标”偏转多少度”。 比如想让挂件始终比角色倾斜 45°,偏移就是 45。 默认值:0(同角度)。单位:角度(°)。 注意:如果”自动计算偏移”开着,读到的值是当前实际相对角度,不是你设的固定值。 | 输入框 默认值:0 | 可选 默认隐藏 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置线性偏移
设置线性偏移:设置 RelativeJoint2D 的连接端刚体相对于当前刚体的目标线性偏移(linearOffset,Vec2)。 默认值:(0, 0)。 注意:
- 无论 autoCalcOffset 是否开启,设置类节点 都会更新内部 _linearOffset
- 如果底层 joint 已创建,还会同步推送到 Box2D MotorJoint 后端
- 若 autoCalcOffset=true,获取类节点 仍会返回动态计算值而非此处设置的值;建议先关闭自动计算再设置固定偏移
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetLinearOffset |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
linearOffset | 线性偏移 | 数据 | vector2 | 相对位置偏移 被跟随物体应该待在我”哪个方向、多远”的位置。 比如想让挂件保持在角色右上方 1 米的位置,偏移就是 { x: 1, y: 1 }。 默认值:{ x: 0, y: 0 }(同一个位置)。 注意:如果”自动计算偏移”开着,读到的值是当前实际相对位置,不是你设的固定值。 | 可编辑控件 默认值:{“x”:0,“y”:0} | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置修正系数
设置位置修正系数:设置 RelativeJoint2D 每步物理解算中向目标相对位姿修正的比例(correctionFactor)。 默认值:0.3。 说明:
- 常用范围 [0,1],数值越小越平滑但收敛更慢,越大越积极但可能更”硬”
- 它不是弹簧频率,也不是线性阻尼
- 引擎 setter 未做 clamp,节点层不应擅自改变引擎行为
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetCorrectionFactor |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
correctionFactor | 修正系数 | 数据 | number | 每帧”追多少” 每帧物理计算中,关节会把位置/角度误差的多少比例修正过来。范围 [0, 1]。 默认值:0.3。 数值小(比如 0.1)= 修正慢但很平滑,像缓缓飘过去的飞毯。数值大(比如 0.8)= 修正快但可能很”硬”,像磁铁啪的一下吸上去。 | 输入框 默认值:0.3 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置自动计算偏移
设置自动计算偏移开关:设置 RelativeJoint2D 的 autoCalcOffset 状态。 默认值:true。 语义:
- true:linearOffset / angularOffset getter 将动态返回当前两端世界相对位置/角度差(若未设 connectedBody 则退化为相对世界原点/零旋转)
- false:linearOffset / angularOffset getter 回读并使用手动配置的内部值 注意:该开关本身不直接调用底层 joint setter。若需要固定相对位姿,建议先设置 autoCalcOffset=false,再设置 linearOffset / angularOffset。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetAutoCalcOffset |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
autoCalcOffset | 自动计算偏移 | 数据 | boolean | 自动算偏移 true(默认)= 自动根据两个物体的当前位置/角度算偏移。适合做”锁定当前位置”——启动时自动记住相对关系。 false = 使用你手动设置的位置/角度偏移。适合”保持固定相对位姿”——不管双方位置怎么变,都会努力回到你设的偏移。 默认值:true。 | 开关 默认值:true | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置最大扭矩
设置最大扭矩:设置 RelativeJoint2D 关节追踪目标相对角度时可施加的最大扭矩上限(maxTorque)。 默认值:0.7。 说明:
- 底层调用 Box2D MotorJoint 的 SetMaxTorque(v)
- 值越大,旋转回正或姿态跟随越有力;值过小会导致角度修正缓慢
- 这不是节点自身角速度,也不是阻尼参数
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetMaxTorque |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
maxTorque | 最大扭矩 | 数据 | number | 旋转跟随的最大力度 关节为了追上目标角度,最多能花多大的”拧劲儿”。 默认值:0.7。 值越大,角度跟随越积极、回正越快。值越小,角度修正越慢。 适合控制”挂件”的旋转回正速度。 | 输入框 默认值:0.7 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置最大线性力
设置最大线性力:设置 RelativeJoint2D 关节追踪目标相对位置时可施加的最大线性力上限(maxForce)。 默认值:5。 说明:
- 底层调用 Box2D MotorJoint 的 SetMaxForce(v)
- 值越大,目标刚体追上期望偏移越快;值过小则跟随缓慢
- 这不是持续恒定施加的外力,而是 MotorJoint 求解过程允许使用的上限
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | relativeJoint2DSetMaxForce |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | RelativeJoint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标相对关节组件 要操作的 RelativeJoint2D 相对关节。 就像一个”跟屁虫”——它会持续努力让两个物体保持固定的相对位置和角度。你设好”相对偏移”(比如挂在角色右肩上方 1 米),它会一直维持这个位置关系。 适合做:角色挂件跟随、摄像机缓动跟随、机械臂姿态保持。 | - | 必填 |
maxForce | 最大线性力 | 数据 | number | ”跟屁虫”的最大拉力 关节为了追上目标位置,最多能花多大的”力气”。 默认值:5。 值越大,物体跟随得越快、越紧;值越小,跟随越慢、越拖沓。 想象一下:狗绳——力气大(高)狗一跑立刻被拽住,力气小(低)则慢慢拉回来。 | 输入框 默认值:5 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
relativeJoint2D | 相对关节 | 数据 | cc.Component / RelativeJoint2D | 目标 RelativeJoint2D 组件 透传当前操作的相对关节组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。