夜雨聆风学习资料网

ARTICLE · 1321057

把 GPT 连到 Unity,官方插件、CLI 和 MCP 怎么配合?

把 GPT 连到 Unity,官方插件、CLI 和 MCP 怎么配合?

上一篇,我们让 Codex 读过 ProjectSettings/ProjectVersion.txt,也核对了它打开的是哪份工程。这次换一个问题。我在 Unity 的 Hierarchy 里刚新建了一个对象,还没保存场景,Codex 能报出它的名字吗?

能读到这个名字,才说明请求真的到了当前打开的 Editor。本篇把验收停在读取,下一篇再让它做第一次场景写入。操作以同一台电脑上的本地 Codex 会话和 Unity 6 Editor 为例。

01|先分清四个东西装在哪

组件
在哪一层
这次负责什么
Unity 官方 Agent Plugin
Codex 客户端
提供 Unity 官方的任务指导和 Skills
Unity CLI
本机命令行
找到目标 Editor、发现命令、发起读取
Unity Pipeline
Unity 项目的 com.unity.pipeline 包
给当前运行的 Editor 提供本机工具接口
Unity CLI 的 MCP 模式
需要 MCP 工具入口的 Agent 客户端
通过 MCP 把同一套 Editor 能力暴露给客户端
连接示意。两条路线都使用项目内的 Pipeline,验收看实际 Editor 返回。

桌面端先打开插件入口,搜索 Unity,确认官方 Unity 插件在当前会话可用。Unity 官方插件已经包含官方 Skills。即使 ~/.agents/skills/ 下面没有文件,也可以由插件加载。用终端版的人可以看 Unity 官方仓库列出的安装及 codex plugin list 验证方式。安装后开一个新的本地会话,选择包含 Assets、Packages 和 ProjectSettings 的工程根目录。〔Unity 的 Codex 插件文档 · Unity 官方插件仓库〕

02|先用本机终端把 Editor 连通

打开一个 Unity 6.0 或更新版本的测试工程,让它完成导入与编译。终端进入同一工程根目录,先看版本和安装状态。

unity --version
unity self-update --check --format json
unity pipeline list

如果项目缺少 Pipeline 包,确认允许改变项目依赖,再从工程根目录执行 unity pipeline install。回到 Editor 等导入和编译结束。如果 Console 有编译错误,先处理它们,尤其是项目进入 Safe Mode 的情况。Pipeline 是工程依赖,新增后检查 Packages/manifest.json 和 Packages/packages-lock.json 的变化。Unity CLI 11 月 5 日的更新说明列出 1.0.0-beta.17。读者按自己选择的更新渠道记录实际 CLI 与 Pipeline 版本。〔Unity Pipeline 安装与验证 · Unity CLI 发行说明〕

下面的路径换成你的绝对路径。含空格时保留双引号。开了多个 Editor 时,更要检查返回结果里的项目路径。

PROJECT_PATH="/absolute/path/to/My Unity Project"
unity status --project-path "$PROJECT_PATH" --format json
unity command --project-path "$PROJECT_PATH" \
  --detail full --format json

先看目标 Editor 是否为 ready,再看它实际注册了哪些读取命令。Unity 官方插件当前列出的层级命令是 scene get_hierarchy。不同版本可能有不同的命名和参数,命令目录是现场依据。若目录里没有对应的读取项,先核对安装和版本,再继续。〔Editor 与项目命令 · Unity 官方命令示例〕

unity command scene get_hierarchy \
  --project-path "$PROJECT_PATH" --caller plugin \
  --skill unity-cli --format json

03|做一次能分辨「读磁盘」和「读 Editor」的验收

在一个可以丢弃改动的测试场景里,用鼠标新建空对象,起一个临时唯一名称,例如 LiveProbe 加上你自己选的几位数字,先别保存场景,也别把名字写进提示词。项目如果使用叠加场景,先在 Unity 里确认哪一个是 Active Scene。现在在本地 Codex 会话里提交这段任务。

请用 Unity 官方 CLI 验证你是否连上当前打开的 Unity Editor。先核对返回的绝对工程路径,再发现该 Editor 注册的只读层级命令。读取当前活动场景,报告场景名和根对象名,附你实际执行的命令与关键工具返回。只执行读取,不保存场景、不进 Play Mode、不安装依赖、不修改文件。若无法取得 Editor 返回,停在故障点并说明。

如果终端和 Codex 都能报出你临时创建的对象名,并且路径一致,这一关就过了。验收结束后,在测试场景里撤销这个临时对象,或者关闭测试场景并放弃它的改动。这份稿件按官方文档核对命令,实际 Editor 连通性和返回值以你在本机执行的结果为准。

04|什么时候需要另外配 MCP?

如果本地 Codex 有权限运行 Unity CLI,直接调用只读命令已经能做完这次验收。需要以工具协议接入、或者客户端环境限制任意 shell 命令时,再考虑 Unity CLI 自带的 MCP 模式。Unity 已弃用的是旧版 com.unity.ai.assistant 的 Editor 内置 MCP 服务器。CLI 的 MCP 模式继续受支持,同样通过 Pipeline 接到本机 Editor。〔Unity 的 MCP 迁移文档〕

想走 MCP 时,先用 unity mcp configure --list 检查当前版本的客户端和配置位置,再按文档为目标客户端注册。变更前看清它会写到哪里、是否调整客户端权限。配置后重启客户端或新开会话,核对服务器与工具列表,再重复刚才的未保存对象验收。即使已经注册,远端云会话也得有自己的可达 Editor 和工程环境。本机打开的 Unity 仍在本机。〔Unity MCP 配置步骤 · Unity CLI 发行说明〕

05|最常卡在哪三步?

  • 插件能看到,unity 找不到。
     先用终端确认 CLI 路径。桌面应用启动时拿到的 PATH 可能不同,让会话报告它实际看到的命令路径。终端没有 codex 命令时,仍可以走桌面插件入口。
  • 终端能跑,status 看不到目标 Editor。
     确认项目确实打开、Pipeline 已加载、编译完成,且传入的是目标工程根目录。终端可连而会话不可连,再看执行权限或沙箱隔离。
  • 工具有结果,但没看到临时对象。
     先核对工程绝对路径和活动场景,再看工具是否截断了层级。打开 Console 或读到场景文件也有用,这次的通过标志是未保存对象出现在实时返回里。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料