使用指南
Cocos 组件 / 2D物理 / Joint2D节点
Cocos 组件 / 2D物理 / Joint2D 节点手册,包含 13 个节点的用途、引脚、使用场景和注意事项。
学习目标
访问 Cocos Creator 组件的属性、方法和事件,把引擎能力转成可视化工作流。
覆盖范围
- 节点数量:13
- 分类路径:Cocos 组件 / 2D物理 / Joint2D
典型使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
通用注意事项
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
- 部分组件能力受 Cocos Creator 版本限制,页面会标出版本字段。
节点索引
| 节点 | 节点 ID | 输入/输出 | 执行方式 |
|---|---|---|---|
| 获取关节类型 | joint2DGetType | 1 / 1 | 立即继续 |
| 获取连接刚体 | joint2DGetConnectedBody | 1 / 1 | 立即继续 |
| 获取连接锚点 | joint2DGetConnectedAnchor | 1 / 1 | 立即继续 |
| 获取所有属性 | joint2DGetProperties | 1 / 6 | 立即继续 |
| 获取允许碰撞 | joint2DGetCollideConnected | 1 / 1 | 立即继续 |
| 获取自身刚体 | joint2DGetBody | 1 / 1 | 立即继续 |
| 获取自身锚点 | joint2DGetAnchor | 1 / 1 | 立即继续 |
| 设置连接刚体 | joint2DSetConnectedBody | 3 / 2 | 立即继续 |
| 设置连接锚点 | joint2DSetConnectedAnchor | 3 / 2 | 立即继续 |
| 设置所有属性 | joint2DSetProperties | 6 / 2 | 立即继续 |
| 设置允许碰撞 | joint2DSetCollideConnected | 3 / 2 | 立即继续 |
| 设置自身锚点 | joint2DSetAnchor | 3 / 2 | 立即继续 |
| 应用关节配置 | joint2DApply | 2 / 2 | 立即继续 |
获取关节类型
查看这是什么类型的关节:返回关节的类型枚举值。 当你拿到一个关节组件,不确定它具体是哪种子类时,用这个节点一查便知。比如传入 DistanceJoint2D 返回 DISTANCE(值 1),传入 HingeJoint2D 返回 HINGE(值 8)。 所有关节类型:
- 0 None:未指定(基类默认)
- 1 DISTANCE:距离/绳长约束
- 2 SPRING:弹簧(弹性恢复力)
- 3 WHEEL:车轮悬挂
- 4 MOUSE:鼠标拖拽
- 5 FIXED:固定焊接
- 6 SLIDER:滑动轨道
- 7 RELATIVE:相对速度追踪
- 8 HINGE:铰链旋转
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetType |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
type | 关节类型 | 数据 | enum / EJoint2DType | 关节类型枚举 返回该关节的实际类型。 0=None,1=DISTANCE,2=SPRING,3=WHEEL,4=MOUSE,5=FIXED,6=SLIDER,7=RELATIVE,8=HINGE | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取连接刚体
看看关节另一端拴着谁:返回关节所连接的另一个 RigidBody2D 组件。 没拴东西(null):不是bug!null 表示另一端固定在世界原点——就像拴在了一面墙上。物体可以绕着墙晃,但不能跑远。做”钟摆”、“拴住的宠物”就是这种效果。 有值:关节连接到了另一个实体物体上,两个物体会互相牵制。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetConnectedBody |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
connectedBody | 连接刚体 | 数据 | cc.Component / RigidBody2D | 连接的 RigidBody2D 组件 关节另一端的刚体。null=连接到世界原点隐式静态刚体(不是错误态)。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取连接锚点
查看关节”钉在”另一端身上的位置:返回关节在连接刚体上的连接点(connectedAnchor,Vec2)。 默认值:{ x: 0, y: 0 }。 比如一根绳子:自身锚点是”我这头拴在角色手上”,连接锚点是”那头拴在门把手上”。 小提示:如果没连刚体(connectedBody=null),这个点是相对于世界原点的坐标。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetConnectedAnchor |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
connectedAnchor | 连接锚点 | 数据 | vector2 | 连接刚体本地空间锚点 关节在连接刚体本地坐标系中的连接点。connectedBody 为 null 时相对于世界原点。默认 (0, 0)。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取所有属性
一次性读出关节的全部基础属性:自身锚点、连接锚点、碰撞开关、连接刚体、自身刚体、关节类型。连一个节点等于连了 6 个 获取类节点,省时省力。 适合场景:调试时一次性查看关节的所有状态、日志记录、或者把关节信息同时发给多个下游节点。 关于 null:connectedBody 为 null 表示关节另一端固定在世界原点(不是bug);body 为 null 表示节点上没有挂 RigidBody2D。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetProperties |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
anchor | 自身锚点 | 数据 | vector2 | 自身刚体本地空间锚点 关节在自身刚体本地坐标系中的连接点。默认 (0, 0)。 | - | 可选 |
connectedAnchor | 连接锚点 | 数据 | vector2 | 连接刚体本地空间锚点 关节在连接刚体本地坐标系中的连接点。connectedBody=null 时相对于世界原点。默认 (0, 0)。 | - | 可选 |
collideConnected | 允许碰撞 | 数据 | boolean | 关节两端刚体碰撞开关 true=两端刚体参与碰撞;false=互相穿透。默认 false。 | - | 可选 |
connectedBody | 连接刚体 | 数据 | cc.Component / RigidBody2D | 连接的 RigidBody2D 组件 null=连接到世界原点隐式静态刚体(不是错误)。 | - | 可选 |
body | 自身刚体 | 数据 | cc.Component / RigidBody2D | 自身绑定的 RigidBody2D 组件 只读。节点无 RigidBody2D 时为 null。 | - | 可选 |
type | 关节类型 | 数据 | enum / EJoint2DType | 关节类型枚举 EJoint2DType 枚举值。输入子类实例时返回该子类的真实类型。0=None,1=DISTANCE,2=SPRING,3=WHEEL,4=MOUSE,5=FIXED,6=SLIDER,7=RELATIVE,8=HINGE。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取允许碰撞
查看关节两端刚体能不能互相撞到:返回 collideConnected 开关状态。 默认值:false(不碰撞,互相穿透)。 true → 关节连接的两个刚体仍然会产生碰撞。适合做铁链——每个铁环之间需要互相撞到才有真实感。 false(默认)→ 两刚体互相穿透。适合大多数关节——绳子穿过物体、弹簧伸缩都很自然。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetCollideConnected |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
collideConnected | 允许碰撞 | 数据 | boolean | 关节两端刚体碰撞开关 true=两端刚体参与碰撞检测;false=互相穿透。默认 false。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取自身刚体
看看关节自己身上挂的是哪个刚体:返回关节所在节点上的 RigidBody2D 组件。 注意:这个属性是只读的——关节自动绑到自己节点上的刚体,不能换别人。 如果关节所在节点没有 RigidBody2D 组件,返回 null。想让关节正常工作,确保节点上已经挂了一个 RigidBody2D。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetBody |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
body | 自身刚体 | 数据 | cc.Component / RigidBody2D | 自身绑定的 RigidBody2D 组件 关节所在节点自动绑定的刚体组件(只读)。节点无 RigidBody2D 时返回 null。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
获取自身锚点
查看关节”钉在”自己身上的位置:返回关节在自身刚体上的连接点(anchor,Vec2)。 默认值:{ x: 0, y: 0 }(刚体中心)。 这个点是相对于自身刚体的局部坐标。比如你想把绳子拴在角色的右手而不是胸口——这个锚点就是”右手的位置”。 通常和”连接锚点(connectedAnchor)“配对使用——一个定义”我这头在哪”,一个定义”那头在哪”。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DGetAnchor |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
anchor | 自身锚点 | 数据 | vector2 | 自身刚体本地空间锚点 关节在自身刚体本地坐标系中的连接点。默认 (0, 0)。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置连接刚体
设置关节另一端栓在谁身上:把关节的另一头连到另一个刚体上,或者设为 null “钉在墙上”。 连接刚体:传入一个 RigidBody2D 组件,两个物体就会通过关节互相牵制。 null:把另一头钉在世界原点。不像任何物体,就像拴在了一面隐形的墙上。做钟摆或拴住的物体就用 null。 常见场景:角色手中的武器(连到角色刚体)、荡来荡去的灯笼(连到天花板,设 null)、锁链桥的每一节互相连接。 注意:改完后记得调用 应用关节配置 节点生效。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DSetConnectedBody |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
connectedBody | 连接刚体 | 数据 | cc.Component / RigidBody2D | 关节另一端连的是哪个刚体 把这个关节的另一头拴到哪个刚体上。 null = 另一头拴在世界原点上,就像把绳子钉在墙上——物体可以绕墙晃但不能跑远。 适用于”把物体固定在世界坐标某点”的场景。 注意:改完后记得调用 应用关节配置 节点生效。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 透传当前操作的 Joint2D 组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置连接锚点
设置关节钉在另一端身上的位置:改变关节在连接刚体上的连接点(connectedAnchor,Vec2)。 默认值:{ x: 0, y: 0 }。 举个栗子🌰:一根绳子,自身锚点拴在角色手上,连接锚点拴在门把手的顶部还是底部?改这个值就行。 注意:如果没连刚体(connectedBody=null),这个点是相对于世界原点的。改完后记得调用 应用关节配置 节点。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DSetConnectedAnchor |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
connectedAnchor | 连接锚点 | 数据 | vector2 | 另一端刚体上的连接点 关节”钉在”连接刚体的哪个位置。 比如一根绳子一头拴在角色手上(自身锚点),另一头拴在门把手上(连接锚点)。 默认值:{ x: 0, y: 0 }。 注意:如果没连刚体(connectedBody=null),这个点是相对于世界原点的。改完后记得调用 应用关节配置 节点。 | 可编辑控件 默认值:[0,0] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 透传当前操作的 Joint2D 组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置所有属性
一次性调好关节的多个基础设置:可以同时修改连接刚体、自身锚点、连接锚点和碰撞开关。比一个个 设置类节点 连起来省事多了。 写入顺序:连接刚体 → 自身锚点 → 连接锚点 → 碰撞开关。先确定”和谁连”,再定”连在哪”,逻辑清楚。 注意:改完后记得连一个 应用关节配置 节点来让所有修改生效。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DSetProperties |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
connectedBody | 连接刚体 | 数据 | cc.Component / RigidBody2D | 关节另一端连的是哪个刚体 把这个关节的另一头拴到哪个刚体上。 null = 另一头拴在世界原点上,就像把绳子钉在墙上——物体可以绕墙晃但不能跑远。 适用于”把物体固定在世界坐标某点”的场景。 注意:改完后记得调用 应用关节配置 节点生效。 | - | 可选 默认隐藏 |
anchor | 自身锚点 | 数据 | vector2 | 自身刚体上的连接点 关节”钉在”自身刚体的哪个位置。 比如你想要一根绳子拴在角色的右手而不是胸口,就改这个点。 默认值:{ x: 0, y: 0 }(刚体中心)。 注意:改完后记得调用 应用关节配置 节点才会生效。 | 可编辑控件 默认值:[0,0] | 可选 默认隐藏 |
connectedAnchor | 连接锚点 | 数据 | vector2 | 另一端刚体上的连接点 关节”钉在”连接刚体的哪个位置。 比如一根绳子一头拴在角色手上(自身锚点),另一头拴在门把手上(连接锚点)。 默认值:{ x: 0, y: 0 }。 注意:如果没连刚体(connectedBody=null),这个点是相对于世界原点的。改完后记得调用 应用关节配置 节点。 | 可编辑控件 默认值:[0,0] | 可选 默认隐藏 |
collideConnected | 允许碰撞 | 数据 | boolean | 关节两端能不能互相撞到 true = 两刚体之间仍然会产生碰撞,不会穿透。适合做链子——每一节互相撞到。 false(默认)= 两刚体互相穿透,关节只管”连接”不负责”碰撞”。适合大多数关节场景——绳子、弹簧本来就应该穿透。 默认值:false。 注意:改完后建议调用 应用关节配置 节点。 | 开关 默认值:false | 可选 默认隐藏 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 透传当前操作的 Joint2D 组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置允许碰撞
设置关节两端能不能互相撞到:开关关节连接的两个刚体之间的碰撞。 默认值:false。 true → 开启碰撞。适合做铁链或锁子甲——每个环节之间需要碰撞才真实。 false(默认)→ 穿透。关节的两端穿过彼此,适合绳子、弹簧等场景。 注意:改完后建议调用 应用关节配置 节点。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DSetCollideConnected |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
collideConnected | 允许碰撞 | 数据 | boolean | 关节两端能不能互相撞到 true = 两刚体之间仍然会产生碰撞,不会穿透。适合做链子——每一节互相撞到。 false(默认)= 两刚体互相穿透,关节只管”连接”不负责”碰撞”。适合大多数关节场景——绳子、弹簧本来就应该穿透。 默认值:false。 注意:改完后建议调用 应用关节配置 节点。 | 开关 默认值:false | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 透传当前操作的 Joint2D 组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
设置自身锚点
设置关节钉在自己身上的位置:改变关节在自身刚体上的连接点(anchor,Vec2)。 默认值:{ x: 0, y: 0 }。 举个栗子🌰:想让绳子拴在角色的脚踝而不是身体中心?把锚点改到脚踝的局部坐标位置就行。 注意:改完锚点后,记得调用 应用关节配置 节点来生效。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DSetAnchor |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
anchor | 自身锚点 | 数据 | vector2 | 自身刚体上的连接点 关节”钉在”自身刚体的哪个位置。 比如你想要一根绳子拴在角色的右手而不是胸口,就改这个点。 默认值:{ x: 0, y: 0 }(刚体中心)。 注意:改完后记得调用 应用关节配置 节点才会生效。 | 可编辑控件 默认值:[0,0] | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 透传当前操作的 Joint2D 组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。
应用关节配置
拍板生效:把所有关节配置的修改同步到物理后端,真正应用到游戏中。 为什么要用这个节点?改锚点、换连接刚体、开关碰撞……这些修改只是”记下来了”,不会立刻生效。你需要调用 应用关节配置 来”让它们变成真的”。 什么时候用:每次修改了关节的锚点、连接体或碰撞开关之后,连一个 应用关节配置 节点确保配置生效。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | joint2DApply |
| 分类 | Cocos 组件 |
| 二级分类 | 2D物理 |
| 分组 | Joint2D |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 要操作的关节。 Joint2D 是所有 2D 关节(绳子、弹簧、铰链、车轮、滑动等)的”公共底座”——这里改的是每个关节都有的基础设置,像”两头接在哪""要不要互相碰撞”。 提示:只要节点上挂了任意一种 2D 关节组件,都可以接入这个端口。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
joint2D | 2D 关节 | 数据 | cc.Component / Joint2D | 目标 2D 关节组件 透传当前操作的 Joint2D 组件,方便连到下一个操作节点。 | - | 可选 |
使用场景
- 控制 UI、音频、动画、物理、灯光、粒子和渲染组件
- 读取组件状态后驱动游戏逻辑
- 批量设置组件属性完成游戏运行时效果
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 目标组件引脚必须连接正确的组件实例。
- 设置类节点通常需要接入执行流,才会真正修改游戏运行时状态。