擴充功能
Control Rig、Enhanced Input、GAS、Landscape 與 Water、Niagara 及 PCG 適用的選用 Unreal MCP 擴充功能,說明各自新增什麼以及如何安裝。
擴充功能讓 Unreal MCP 認識更多引擎系統。每個擴充功能都是獨立、選用的 Unreal 外掛,各有自己的版本與發行。只安裝你的專案有用到的那些。
所有擴充功能都放在 Unreal-MCP 儲存庫,並列於 Unreal 擴充功能頁面。
擴充功能的運作方式
每個擴充功能都是一個 RQL 模組。它不會自己新增 MCP 工具,而是為核心的 rql-query、rql-mutate 與 rql-schema 工具新增來源、操作與成員(參見 工具),並在 unreal-rql 技能中新增一節,教導 agent 如何使用它。agent 的工具清單維持精簡,能力範圍卻不斷擴大。
反射機制本來就會揭露每個已載入引擎型別的屬性,所以即使沒有擴充功能,agent 也能例如設定 Niagara 元件的資產。擴充功能則補上反射看不到的部分,例如列出 Niagara 系統及其發射器,或雕塑地形。
需求
- Unreal Engine 5.7 或更新版本(擴充功能的測試套件驗證過 5.7 與 5.8)。
- 同一個專案中的 Unreal MCP 0.26.0 或更新版本。
- C++ 工具鏈。擴充功能以原始碼形式提供,並針對你的專案與引擎進行編譯。
- 每個擴充功能所依據的引擎外掛。安裝程式會替你啟用。
沒有任何擴充功能需要依賴另一個擴充功能。
六個擴充功能
| 擴充功能 | 擴充功能 ID | 引擎外掛 | 新增內容 |
|---|---|---|---|
| AI ControlRig | com.ivanmurzak.unreal-ai-control-rig | ControlRig | 建立含骨骼、控制項與雙骨骼 IK 解算器的 rig;查詢 Control Rig 藍圖與元件 |
| AI EnhancedInput | com.ivanmurzak.unreal-ai-enhanced-input | EnhancedInput | 查詢 Input Action 與 Mapping Context、建立 action 與 context、對應按鍵 |
| AI GAS | com.ivanmurzak.unreal-ai-gas | GameplayAbilities | 查詢 ability、effect 與 attribute-set 類別及已授予的 ability、將 ability 授予 actor |
| AI Landscape | com.ivanmurzak.unreal-ai-landscape | Water | 建立、雕塑與繪製地形;查詢地形、水體與水域 |
| AI Niagara | com.ivanmurzak.unreal-ai-niagara | Niagara | 查詢 Niagara 系統及其發射器、在關卡中放置系統 |
| AI PCG | com.ivanmurzak.unreal-ai-pcg | PCG | 查詢 PCG 圖與元件、新增元件並執行生成 |
每個擴充功能目前的發行版本為 0.2.0。
每個 RQL 模組包含什麼
| 擴充功能 | 來源 | 操作 |
|---|---|---|
| AI ControlRig | controlRigs、controlRig | CreateRig、AddBone、AddControl、AddTwoBoneIK |
| AI EnhancedInput | inputActions、inputContexts、enhancedInput | CreateAction、CreateContext、AddMapping、RemoveMapping、AddActionEvent、AddMappingContextOnBeginPlay |
| AI GAS | gasAbilities、gasEffects、gasAttributeSets、gas | GrantAbility |
| AI Landscape | landscapes、waterBodies、waterZones、landscape | Create、Sculpt、Paint、CreateLayerMaterial |
| AI Niagara | niagaraSystems、niagara | SpawnSystem |
| AI PCG | pcgGraphs、pcg | AddComponent、Generate |
你不需要記住這些名稱。agent 會從 rql-schema 與技能中讀取它們。當你閱讀 agent 的查詢時,這些名稱會有所幫助。
使用 unreal-mcp-cli 安裝
請先關閉 Unreal Editor,然後:
unreal-mcp-cli install-extension com.ivanmurzak.unreal-ai-niagara ./YourProject此命令會:
- 在擴充功能索引中查出擴充功能 ID,並找到其最新的 GitHub 發行版本。
- 將外掛放到
<project>/Plugins/<PluginName>/(例如Plugins/UnrealAINiagara/)。 - 在你的
.uproject中啟用該擴充功能及其引擎外掛。 - 把編譯留到下次啟動編輯器時進行,或加上
--build立即編譯。
可以安全地重複執行:若相同版本已安裝並啟用,就不會有任何變更。除非你指定版本,否則它絕不會降級已安裝的擴充功能。
實用旗標:
--version 0.2.0安裝指定的確切發行版本。--build立即編譯(Windows、macOS 與 Linux)。--source <dir>從本機資料夾安裝,適用於離線機器與 CI。--force即使已是最新也重新安裝。
你可以用擴充功能 ID、顯示名稱或外掛資料夾名稱來安裝。
從編輯器或應用程式安裝
- **在編輯器中:**AI Game Developer 視窗的 Extensions 區段會列出已安裝的擴充功能,並在按下 Refresh catalog 後列出可用的擴充功能。Install 與 Update 會下載擴充功能;新的擴充功能會顯示「Installed · needs editor restart to compile」,直到建置完成為止,或改用 Compile (Live Coding)。
- **在 AI Game Dev 應用程式中:**使用側邊欄的擴充功能動作(或應用程式 CLI 中的
/install-extension)。應用程式會挑選最新的發行版本。參見 專案與引擎。
開啟或關閉擴充功能
Extensions 區段中每個已安裝的擴充功能都有一個啟用開關。關閉後會立即從 agent 移除其新增內容,無需重新啟動編輯器。此選擇會在編輯器工作階段之間保留。
範例提示
- 「列出專案中的每個 Niagara 系統,並顯示 NS_Fire 的發射器。」(AI Niagara)
- 「建立一個布林 Input Action IA_Jump 與一個 Mapping Context IMC_Default,並將空白鍵對應到它。」(AI EnhancedInput)
- 「將 GA_Fireball 授予 Hero actor。」(AI GAS)
- 「建立一個地形並在上面繪製草地層。」(AI Landscape)
- 「為 ForestVolume actor 新增一個帶有 PCG_Forest 的 PCG 元件並生成它。」(AI PCG)
- 「建立一個含三骨骼鏈的 rig,並在其上加上雙骨骼 IK。」(AI ControlRig)
撰寫你自己的擴充功能
任何 Unreal 外掛都能新增自己的 RQL 模組、工具、提示或資源,而不必分支 Unreal MCP。參見 自訂工具。