Script Graph

使用指南

核心概念 / 节点、引脚和连线

用可操作的语言解释节点、执行引脚、数据引脚、类型匹配和常见连线错误。

16

节点是工作流里的动作或值,引脚是节点能连接的位置,连线负责把执行顺序和值传下去。

两类线要分清

线看什么解决什么问题
执行流通常从左到右连接执行引脚下一步执行哪个节点
数据流连接字符串、数字、节点、组件、资产等数据引脚某个输入值从哪里来

执行流只控制顺序,不传具体数值。数据流只传值,不会主动让节点执行。一个节点想真正运行,通常既要有执行入口,也要准备好它需要的数据。

一个最小例子

“加载事件 → 打印字符串”里有两件事:

  1. 加载事件的执行输出接到打印字符串的执行输入。
  2. 打印字符串的文本输入填入 Hello Script Graph

第一步决定打印节点会被执行,第二步决定打印什么。

输入和输出

左侧通常是输入,右侧通常是输出:

  • 输入引脚:等别人把执行或数据传进来。
  • 输出引脚:把执行或数据传给别人。
  • 事件引脚:用于绑定回调,例如按钮点击、键盘输入、自定义事件。

如果一个输入引脚已经接了线,再接另一条同类线时,旧线通常会被替换或被提示不兼容。这样可以避免一个输入同时收到多个来源导致结果不确定。

默认值、连线值和执行时读取

很多输入引脚既可以直接填默认值,也可以接一条数据线。理解这件事能减少很多“看起来接了线但结果不对”的问题。

输入状态执行时使用什么
没接数据线,填了默认值使用面板里的默认值
接了数据线使用上游节点输出的值
接了数据线,但上游输出为空使用空值,通常不会自动回退默认值
输入类型不匹配连线会失败,或编译时提示类型错误

执行流到达某个节点时,节点会读取当前需要的数据输入。也就是说,数据线不是提前“推送”值,而是在节点执行时从上游结果里取值。

一个常见例子:

查找节点
  -> 输出 Node
  -> 获取 Button 组件

获取 Button 组件 执行时会读取 查找节点 的输出。如果查找路径写错,后面获取组件也会失败。排查时要打印中间输出,不要只看最后一个节点。

类型匹配

数据线需要类型兼容。常见类型包括:

类型常见来源
字符串名称、路径、日志文本、场景名
数字坐标、速度、分数、时间
布尔值开关、条件判断
节点场景节点、查找节点结果、当前节点
组件Button、Label、Sprite、AudioSource 等
资产Prefab、SpriteFrame、AudioClip、SceneAsset 等
枚举状态、方向、品质、事件名
结构体一组字段构成的数据

如果线接不上,先看两端类型,再看是否需要先用“获取组件”“构造结构体”“枚举值”“类型转换”一类节点做中间桥接。

常见连线错误

现象常见原因处理方式
节点不执行没有执行流接入从事件、函数入口或上游节点接入执行线
数据为空只接了执行线,数据输入没有值给输入填默认值或接入数据输出
线接不上两端类型不兼容换成同类型节点,或先转换类型
分支永远走同一路条件输入没有变化打印条件值,确认数据来源
事件没有响应只创建了事件节点,没有绑定目标检查事件绑定节点、目标组件和解绑时机

新手搭图顺序

  1. 先放入口节点。
  2. 再放调试输出,确认入口能触发。
  3. 接入一条真实业务线。
  4. 每接入一个条件、循环或异步节点,就打印关键输入和输出。
  5. 最后再清理临时打印。

这个顺序的重点是“每一步都能被观察”。如果一次放十几个节点再运行,失败时很难知道问题出在入口、数据、分支、异步完成还是最终动作。

继续阅读