擴充功能
Unity MCP 擴充功能為 Animation、Cinemachine、Input System、Navigation、ProBuilder、Splines、Terrain、Tilemap、Timeline 與粒子系統加入 AI 支援。
擴充功能是選用的 Unity 套件,用來讓 AI 代理了解特定的 Unity 功能,例如 Cinemachine 攝影機、ProBuilder 網格或 2D Tilemap。只安裝專案實際用得到的就好。本頁列出十個官方擴充功能、各自新增了什麼,以及如何安裝。每個擴充功能在 Unity 擴充功能目錄 也都有詳細頁面。
擴充功能的運作方式
自 Unity MCP 1.0.0(以及擴充功能版本 2.0.0)起,擴充功能不會新增任何 MCP 工具。它改為提供一個 RQL 模組:新的來源、函式與型別配接器,由既有的 rql-query 與 rql-mutate 工具來理解。代理的工具清單大小維持不變,而擴充功能的指南會加入所產生的 unity-rql 技能中,因此只要套件安裝完成並重新產生技能,代理就能立刻學會新語法。
例如,安裝 AI Tilemap 之後,代理就能透過 RQL 繪製圖磚:
objects | get components | where $ is Tilemap | call BoxFill("Assets/Tiles/Grass.asset", -5, -3, 5, 3)每個擴充功能都相依於核心外掛 com.ivanmurzak.unity.mcp,以及它所建構於其上的 Unity 套件。安裝時會一併帶入兩者。它們全都支援 Unity 2022.3 及以上版本。
官方擴充功能
| 擴充功能 | 套件 ID | 建構於 | RQL 新增內容 |
|---|---|---|---|
| AI Animation | com.ivanmurzak.unity.mcp.animation | Animation 模組 | animation 來源;AnimationClip、AnimatorController 與 Animator 型別 |
| AI Cinemachine | com.ivanmurzak.unity.mcp.cinemachine | com.unity.cinemachine | cinemachine 來源;CinemachineCamera、CinemachineBrain |
| AI InputSystem | com.ivanmurzak.unity.mcp.inputsystem | com.unity.inputsystem | input 來源;InputActionAsset |
| AI Navigation | com.ivanmurzak.unity.mcp.navigation | com.unity.ai.navigation | navigation 來源;NavMeshSurface、NavMeshLink、NavMeshAgent |
| AI Particle System | com.ivanmurzak.unity.mcp.particlesystem | Particle System 模組 | ParticleSystem 及其模組、曲線與漸層 |
| AI ProBuilder | com.ivanmurzak.unity.mcp.probuilder | com.unity.probuilder | probuilder 來源與函式;ProBuilderMesh |
| AI Splines | com.ivanmurzak.unity.mcp.splines | com.unity.splines | splines 來源;SplineContainer |
| AI Terrain | com.ivanmurzak.unity.mcp.terrain | Terrain 模組 | terrain 來源;高度函式;Terrain、TerrainData |
| AI Tilemap | com.ivanmurzak.unity.mcp.tilemap | Tilemap 模組與 2D Tilemap Extras | tilemap 來源與函式;Tilemap、RuleTile |
| AI Timeline | com.ivanmurzak.unity.mcp.timeline | com.unity.timeline | timeline 來源;TimelineAsset、軌道、片段、PlayableDirector |
每個模組確切的來源、函式與呼叫方式,都列在其目錄頁面上,以及在編輯器內的 rql-schema 中。
從 AI Game Developer 視窗安裝
- 開啟 Window > AI Game Developer — MCP。
- 捲動到 Extensions。
- 在你要的擴充功能旁點擊 Install。
視窗會將 OpenUPM 範圍註冊表與該套件加入 Packages/manifest.json,版本為 OpenUPM 上的最新版本。Unity 接著會解析並匯入它。
使用 unity-mcp-cli 安裝
unity-mcp-cli install-extension --list
unity-mcp-cli install-extension Tilemap ./MyUnityProjectid 可以是目錄名稱(Tilemap、Cinemachine、ProBuilder……)或套件 ID(com.ivanmurzak.unity.mcp.tilemap),比對時不區分大小寫。路徑預設為目前資料夾。此命令會解析最新的 OpenUPM 版本,絕不會將已安裝的較高版本降級,若擴充功能已是最新版本則不會做任何事。使用 --extension-version <version> 固定版本(不是 --version,那會印出 CLI 版本)。之後請開啟或切換到 Unity,讓 Package Manager 進行解析。
使用 OpenUPM 安裝
openupm add com.ivanmurzak.unity.mcp.cinemachine每個擴充功能在 Unity-MCP 儲存庫 的 README 也連結了該擴充功能的 .unitypackage 安裝程式,運作方式與核心安裝程式相同。
使用桌面應用程式安裝
AI Game Dev 應用程式 也能將 Unity 擴充功能安裝到目前開啟的專案中。它使用各擴充功能自身的 OpenUPM 版本,與核心外掛版本無關。請參閱應用程式文件。
安裝之後
- 重新產生技能(視窗中的 Skills > Generate,或
unity-mcp-cli setup-skills <agent>),讓代理的unity-rql技能包含新模組。 - 如果代理似乎不認得新的型別,請要求它從
rql-schema開始,例如「使用 rql-schema 看看 cinemachine 來源提供哪些功能,然後為 Player 加上一個跟隨攝影機。」 - 舊教學中的工具名稱,例如
tilemap-set-tile或cinemachine-camera-create,已不復存在。各擴充功能的 README 會將它們對應到等效的 RQL。
更新與移除
擴充功能與核心外掛分開版本化。可在 Package Manager 中更新,或重新執行 install-extension。移除時就像其他套件一樣在 Package Manager 中移除。請讓核心外掛與擴充功能一起保持在目前版本:擴充功能會宣告所需的核心最低版本。
自行撰寫
你的專案程式碼可以直接新增工具(參見自訂工具),或用自訂 RQL 配接器讓 RQL 認識你自己的型別。儲存庫的擴充功能指南說明了官方擴充功能是如何建構與測試的。