蓝图操作
NexusFlow 的核心能力是通过 AI 对话来操作虚幻引擎蓝图。用自然语言描述你的需求,AI 会自动分析蓝图并执行操作。
AI 蓝图能力
NexusFlow 提供了一组内置的蓝图操作工具。这些工具由 AI 自动调用,你不需要手动触发:
| 能力 | 说明 |
|---|---|
| 读取蓝图 | 获取蓝图的完整结构 |
| 修改蓝图 | 添加、删除或更新蓝图元素 |
| 节点搜索 | 智能搜索可用的蓝图节点模板 |
| Skill 执行 | 运行预定义的 UE 操作脚本 |
| Python 脚本 | 在 UE 中执行自定义 Python 代码 |
前提条件
蓝图操作需要 UE 编辑器处于连接状态。请确认侧边栏底部状态栏显示绿色连接指示器。
读取蓝图
当你询问当前蓝图时,AI 会自动获取其 JSON 表示,包括:
- 所有节点及其类型
- 节点之间的连线关系
- 变量定义和默认值
- 函数和事件图
对话示例:
| 示例 | 说明 |
|---|---|
| 「解释这个蓝图」 | AI 读取并分析整体蓝图逻辑 |
| 「这个蓝图是做什么的?」 | 获取蓝图的功能概述 |
| 「列出所有变量」 | 查看所有变量定义 |
| 「EventBeginPlay 做了什么?」 | 解释特定的函数或事件 |
| 「选中的这些节点是做什么的?」 | 解释当前选中节点的功能 |
AI 会读取蓝图结构并用清晰的语言向你解释。
修改蓝图
AI 可以对蓝图进行各种修改,包括添加、删除和编辑节点及连线。修改通过「蓝图补丁」应用,确保操作安全。
节点操作
| 示例 | 说明 |
|---|---|
| 「添加一个 Print String 节点」 | 创建新节点 |
| 「在 BeginPlay 后添加一个 2 秒延迟的 Delay 节点」 | 创建并连接,设置参数 |
| 「删除选中的节点」 | 移除当前选中的节点 |
| 「把 Delay 节点的时间改为 5 秒」 | 修改节点属性值 |
连线操作
| 示例 | 说明 |
|---|---|
| 「把 BeginPlay 连接到 Print String」 | 创建节点间的连线 |
| 「断开 Delay 和 Print String 之间的连线」 | 移除连线 |
| 「把 GetPlayerController 的返回值连接到 Cast」 | 连接特定引脚 |
批量操作
对于复杂逻辑,AI 可以在一次操作中创建多个节点和连线:
「添加一个 Branch 节点,条件连接到 IsValid 的结果,True 时执行 Print String」
「创建一个简单的计时器逻辑:BeginPlay → SetTimer → 回调函数打印消息」注意
AI 修改蓝图后,更改会自动反映在 UE 编辑器中。如果结果不符合预期,可以在 UE 中使用 Ctrl+Z 撤销操作。
创建蓝图逻辑
你可以让 AI 从零开始创建完整的蓝图逻辑:
| 示例 | 说明 |
|---|---|
| 「创建一个角色移动蓝图」 | 构建完整的移动逻辑 |
| 「添加一个按下 E 键触发的输入事件」 | 创建输入事件处理器 |
| 「创建一个每 2 秒触发一次的计时器」 | 构建基于计时器的逻辑 |
| 「实现一个基本的生命值系统」 | 创建包含变量和逻辑的完整系统 |
| 「创建每 3 秒旋转 90 度的逻辑」 | 基于时间的变换 |
AI 会根据你的描述自动创建所需的节点、变量和连线。
变量管理
通过对话管理蓝图变量:
| 示例 | 说明 |
|---|---|
| 「创建一个 Float 变量 PlayerHealth,默认值 100」 | 创建带类型的变量 |
| 「创建一个布尔变量 IsActive」 | 创建简单变量 |
| 「把变量重命名为 PlayerHealth」 | 重命名现有变量 |
| 「把 MaxHealth 的默认值设为 100」 | 修改默认值 |
| 「删除 TempData 变量」 | 移除变量 |
函数管理
管理蓝图中的自定义函数:
| 示例 | 说明 |
|---|---|
| 「创建一个函数 CalculateDamage,参数 BaseDamage (Float)」 | 创建带参数的函数 |
| 「给 InitializePlayer 函数添加默认值初始化逻辑」 | 向现有函数添加逻辑 |
| 「给 GetPlayerInfo 函数添加返回值」 | 修改函数签名 |
事件管理
管理蓝图事件:
| 示例 | 说明 |
|---|---|
| 「添加一个 ActorBeginOverlap 事件」 | 添加标准事件 |
| 「在 EventTick 中添加旋转逻辑」 | 向现有事件添加逻辑 |
| 「创建一个自定义事件 OnPlayerDeath」 | 创建自定义事件 |
节点搜索
当 AI 需要查找特定类型的节点时,会使用智能搜索找到最合适的节点模板:
- 节点模板搜索:使用语义搜索查找可用的蓝图节点类型
- 蓝图节点搜索:在当前蓝图中搜索已有节点
| 示例 | 说明 |
|---|---|
| 「有没有获取玩家位置的节点?」 | 搜索节点模板 |
| 「查找与碰撞检测相关的节点」 | 语义搜索蓝图节点 |
| 「有哪些数学运算节点可用?」 | 浏览特定类别的节点 |
搜索过程是自动的——当你描述需求时,AI 会自动搜索匹配的节点来完成操作。
UE Skills
NexusFlow 包含内置的 UE Skills 系统,提供高级蓝图操作能力。AI 可以自动搜索、加载和执行相关的 Skill。
Skills 目前涵盖以下能力:
- 蓝图 — 蓝图创建、管理和 60+ 节点操作
- 资产 — 资产创建、导入和管理
- 数据 — 数据表和曲线表操作
- 光照 — 光照设置和配置
使用示例:
| 示例 | 说明 |
|---|---|
| 「创建一个新的 Actor 蓝图」 | AI 选择 Blueprint Skill |
| 「导入这个 FBX 为静态网格」 | AI 选择 Asset Skill |
| 「给伤害数据表添加一行」 | AI 选择 Data Skill |
提示
你不需要了解 Skills 的实现细节。只需描述你想完成的操作,AI 会自动选择合适的 Skill。
Python 脚本执行
对于 Skills 未覆盖的特殊操作,AI 可以编写并执行 Python 脚本来直接操控 UE 编辑器:
「批量重命名所有以 BP_ 开头的蓝图」
「导出当前关卡中所有 Actor 的位置信息」安全提示
Python 脚本在 UE 编辑器中执行,拥有完整的编辑器访问权限。NexusFlow 会在执行前进行安全检查。
高效提示技巧
遵循以下技巧可以获得更好的 AI 回复:
✅ 最佳实践
- 描述具体:「在 BeginPlay 后添加一个 2 秒延迟的 Delay 节点,然后执行 Print String」比「添加一个节点」清晰得多
- 提供背景:「我正在为射击游戏构建伤害系统」有助于 AI 理解整体目标
- 分步完成:将复杂需求拆分为多个步骤,逐步完成并确认结果
- 使用 UE 术语:使用准确的 UE 概念名称(如 Actor、Component、Blueprint)
- 先选中再询问:询问前先选中特定节点,AI 能更好地理解你的意图
❌ 应避免的做法
- 模糊的描述,如「改一下蓝图」
- 在单条消息中提出过于复杂的需求
- 在没有打开蓝图的情况下要求蓝图操作
确保蓝图已打开
在请求蓝图操作之前,请确保已在 UE 编辑器中打开目标蓝图。AI 需要读取蓝图信息才能执行操作。