循环¶
用途¶
“循环”按从起始编号到结束编号的顺序重复执行同一段流程,并在每轮提供当前编号。适合遍历固定数量的槽位、页面或步骤。
添加路径¶
Shift+A → 执行管理 → 循环
执行行为¶
从“进入循环”收到执行信号时,节点读取起始和结束编号,并按 +1 递增。起始与结束都包含在循环范围内。例如起始为 0、结束为 2 时,循环体依次收到编号 0、1、2,随后触发“循环后”。
如果起始编号大于结束编号,循环体不会执行,直接触发“循环后”。起始与结束输入在本轮循环建立时读取,不会在每次迭代时重新取值。
从“结束循环”收到信号会清除当前循环状态并触发“循环后”。如果流程到达结束执行,结束的是整个蓝图,而不仅是当前循环。
输入端口¶
| 端口 | 类型 | 必填 | 说明 |
|---|---|---|---|
| 进入循环 | 执行 | 是 | 创建或继续本轮循环。 |
| 结束循环 | 执行 | 否 | 提前结束当前循环并转到“循环后”。 |
| 起始 | 整数 | 否 | 第一个循环编号;未连接时默认 0。 |
| 结束 | 整数 | 否 | 最后一个循环编号;未连接时默认 0。 |
输出端口¶
| 端口 | 类型 | 说明 |
|---|---|---|
| 循环后 | 执行 | 正常完成全部编号或收到“结束循环”后触发。 |
| 循环体 | 执行 | 每个编号触发一次。 |
| 编号 | 整数 | 当前这一次循环的编号。 |
属性¶
| 属性 | 默认值 | 说明 |
|---|---|---|
| 起始 | 0 | “起始”端口未连接时使用。 |
| 结束 | 0 | “结束”端口未连接时使用。 |
当前循环只支持由小到大、步长为 1 的编号序列。
最小示例¶
循环体不需要手动把执行线连回循环入口;节点会在一轮流程返回后安排下一编号。
常见错误¶
- 循环一次也没执行:检查起始编号是否大于结束编号。
- 希望倒序循环:当前节点固定按
+1递增;请先换算索引,或在循环体中用运算节点得到倒序值。 - 把循环体接到“结束执行”后只运行一轮:“结束执行”会终止整个蓝图。普通循环完成后应从“循环后”进入结束节点。
- 在循环中修改结束值却没有影响当前轮:边界值在本轮循环开始时读取,下一次重新进入循环才会采用新值。