Script Graph

使用指南

物理系统 / 2D查询节点

物理系统 / 2D查询 节点手册,包含 3 个节点的用途、引脚、使用场景和注意事项。

16

学习目标

执行射线、形状和屏幕点查询,获取物理世界中的碰撞结果。

覆盖范围

  • 节点数量:3
  • 分类路径:物理系统 / 2D查询

典型使用场景

  • 点击屏幕选择 3D 对象
  • 检测攻击范围或视线遮挡
  • 根据射线结果决定移动、拾取或交互

通用注意事项

  • 物理查询依赖场景中的碰撞体配置。
  • 全部拾取类节点可能返回多个结果,后续通常要遍历或筛选。

节点索引

节点节点 ID输入/输出执行方式
2D 点检测physicsSystem2DTestPoint2 / 3立即继续
2D 矩形检测physicsSystem2DTestAABB2 / 3立即继续
2D 射线检测physicsSystem2DRaycast5 / 3立即继续

2D 点检测

2D 点检测:检查一个点是否落在某些碰撞体里面。 适合做“鼠标点到了哪个按钮区域”“角色脚底这个点是否踩在地面上”这类判断。

节点信息

字段
节点 IDphysicsSystem2DTestPoint
分类物理系统
二级分类2D查询
分组-
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口
到达这里时,立即执行这次设置或查询。
-可选
point世界点数据vector2世界点
填写一个 2D 坐标。通常用来表示起点、终点或要检查的位置。
可编辑控件
默认值:{“x”:0,“y”:0}
必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流继续执行
当前操作完成后,从这里继续后续流程。
-可选
hit是否命中数据boolean是否找到目标
如果至少检测到一个碰撞体,这里就是 true;否则为 false。
-可选
colliders碰撞体数组数据cc.Component / array / Collider2D找到的碰撞体
返回包含这个点的所有 2D 碰撞体。可继续拿它们去判断所属节点或执行后续逻辑。
-可选

使用场景

  • 点击屏幕选择 3D 对象
  • 检测攻击范围或视线遮挡
  • 根据射线结果决定移动、拾取或交互

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 物理查询依赖场景中的碰撞体配置。
  • 全部拾取类节点可能返回多个结果,后续通常要遍历或筛选。

2D 矩形检测

2D 矩形检测:检查一个矩形范围里有哪些碰撞体。 适合做范围攻击、拾取区域、敌人警戒区或箱子占位检测。

节点信息

字段
节点 IDphysicsSystem2DTestAABB
分类物理系统
二级分类2D查询
分组-
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口
到达这里时,立即执行这次设置或查询。
-可选
rect世界矩形数据rect要检查的矩形范围
填写矩形的位置和大小,用来检查这块区域里有哪些碰撞体。
可编辑控件
默认值:{“x”:0,“y”:0,“width”:100,“height”:100}
必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流继续执行
当前操作完成后,从这里继续后续流程。
-可选
hit是否命中数据boolean是否找到目标
如果至少检测到一个碰撞体,这里就是 true;否则为 false。
-可选
colliders碰撞体数组数据cc.Component / array / Collider2D范围内的碰撞体
返回和这个矩形范围相交的所有 2D 碰撞体。
-可选

使用场景

  • 点击屏幕选择 3D 对象
  • 检测攻击范围或视线遮挡
  • 根据射线结果决定移动、拾取或交互

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 物理查询依赖场景中的碰撞体配置。
  • 全部拾取类节点可能返回多个结果,后续通常要遍历或筛选。

2D 射线检测

2D 射线检测:在 2D 世界里沿一条直线往前找,看看会碰到哪些碰撞体。 适合做平台跳跃里的视线检查、子弹命中、角色脚下或前方探测。

节点信息

字段
节点 IDphysicsSystem2DRaycast
分类物理系统
二级分类2D查询
分组-
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口
到达这里时,立即执行这次设置或查询。
-可选
p1起点数据vector2起点
填写一个 2D 坐标。通常用来表示起点、终点或要检查的位置。
可编辑控件
默认值:{“x”:0,“y”:0}
必填
p2终点数据vector2终点
填写一个 2D 坐标。通常用来表示起点、终点或要检查的位置。
可编辑控件
默认值:{“x”:100,“y”:0}
必填
type检测类型数据enum / ERaycast2DType检测方式
最近命中(=0):只返回最近的结果
任意命中(=1):碰到第一个就停止
每个物体最近命中(=2):每个碰撞体只保留最近的结果
全部命中(=3):返回路径上的所有结果
下拉选择
默认值:0
可选
mask碰撞掩码数据number筛选范围
用来限制“只检查哪些碰撞体”。默认 0xffffffff 表示全部都检查;不确定时保持默认即可。
输入框
默认值:4294967295
可选

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流继续执行
当前操作完成后,从这里继续后续流程。
-可选
hit是否命中数据boolean是否找到目标
如果至少检测到一个碰撞体,这里就是 true;否则为 false。
-可选
results命中结果数组数据reference / array / RaycastResult2D全部检测结果
返回这次检测找到的所有结果。若你只关心最近的一个目标,可改用“最近命中”类节点。
-可选

使用场景

  • 点击屏幕选择 3D 对象
  • 检测攻击范围或视线遮挡
  • 根据射线结果决定移动、拾取或交互

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 物理查询依赖场景中的碰撞体配置。
  • 全部拾取类节点可能返回多个结果,后续通常要遍历或筛选。