話式搭建智慧倉儲(chǔ)數(shù)字孿生場(chǎng)景)
前陣子接手一個(gè)智慧倉儲(chǔ)的前期原型客戶要得其實(shí)很樸素把倉庫里的貨架、托盤、AGV通道做成一個(gè)3D場(chǎng)景讓業(yè)務(wù)方在瀏覽器里能直觀看到整體布局后期還要疊加上庫存數(shù)據(jù)和傳感器狀態(tài)。按老路子走要么上UE5、Unity從零搭數(shù)字孿生底座要么用Three.js手寫一大堆幾何體代碼周期都不短。這次我換了一條新路徑Antigravity Blender MCP從空白文件到有模有樣的倉儲(chǔ)3D場(chǎng)景基本是“把模型聊出來的”。先解釋這幾個(gè)關(guān)鍵詞。Antigravity是一個(gè)AI代理開發(fā)平臺(tái)你把任務(wù)用自然語言寫清楚它能自動(dòng)拆解、編排并執(zhí)行多步驟的Agent任務(wù)Blender MCP則是給Blender安裝的一個(gè)MCP服務(wù)端讓AI可以通過標(biāo)準(zhǔn)協(xié)議直接調(diào)用Blender的建模能力。兩者一接等于給AI裝上了“三維畫筆”。這篇內(nèi)容適合正在做數(shù)字孿生園區(qū)、智慧倉儲(chǔ)或物流仿真的工程師、前端開發(fā)者也適合想快速出三維可視原型的產(chǎn)品經(jīng)理。我會(huì)把環(huán)境配置、建模實(shí)操、踩坑經(jīng)驗(yàn)全部拆開講你照著做半天之內(nèi)就能跑通第一個(gè)倉儲(chǔ)場(chǎng)景原型。1. 場(chǎng)景定調(diào)智慧倉儲(chǔ)數(shù)字孿生項(xiàng)目怎么搭第一張“底圖”1.1 數(shù)字孿生建模的核心不是“像”而是“結(jié)構(gòu)化”很多人一聽數(shù)字孿生第一反應(yīng)是要做高精度模型恨不得把貨架每顆螺絲都建模出來。這個(gè)思路在數(shù)字孿生項(xiàng)目里恰恰是最大的坑。數(shù)字孿生的價(jià)值在于物理世界與數(shù)字空間的映射和聯(lián)動(dòng)重點(diǎn)在“孿生關(guān)系”不在“像不像”。倉儲(chǔ)場(chǎng)景里最需要表達(dá)的東西歸納下來就四層。第一層是空間結(jié)構(gòu)庫房多大、層高多少、收貨區(qū)和發(fā)貨區(qū)在哪這決定了整個(gè)場(chǎng)景的骨架。第二層是資產(chǎn)位置貨架在哪排、托盤放在哪個(gè)貨位、AGV從哪條路走這決定了業(yè)務(wù)邏輯能否在三維空間里講清楚。第三層是運(yùn)動(dòng)狀態(tài)AGV當(dāng)前在哪、是否在搬運(yùn)、路徑是否擁堵這是后期做仿真的基礎(chǔ)。第四層才是外觀表現(xiàn)材質(zhì)、光照、渲染效果這部分恰恰是最不值得初期投入精力的。所以我給團(tuán)隊(duì)定的原則是原型階段只做“結(jié)構(gòu)化粗?!薄X浖苡肂ox組合AGV用帶圓角的長方體托盤用標(biāo)準(zhǔn)幾何體堆疊。每一個(gè)對(duì)象在Blender里有一個(gè)干凈的命名、一個(gè)明確的層級(jí)歸屬比它長得好看重要一百倍。后面到了演示或投標(biāo)階段再針對(duì)關(guān)鍵設(shè)備單獨(dú)替換高精度模型完全來得及。這就像畫建筑草圖先用線條把空間關(guān)系定住再談裝飾細(xì)節(jié)。1.2 為什么選擇Antigravity Blender MCP而不是傳統(tǒng)建模方式選型這件事我對(duì)比了幾條常見路徑。傳統(tǒng)純手工Blender建模一個(gè)熟練建模師搭出像樣的倉儲(chǔ)場(chǎng)景也要一到兩天而且后期需求一改返工成本非常高。用Three.js直接寫前端三維對(duì)團(tuán)隊(duì)前端能力要求高每次調(diào)整布局都要改代碼迭代速度慢。直接上UE5或者Unity的數(shù)字孿生模板功能確實(shí)全但對(duì)小團(tuán)隊(duì)來說偏重起步成本和運(yùn)行時(shí)開銷都不小。Antigravity Blender MCP這套組合核心優(yōu)勢(shì)是把“人操作三維軟件”變成了“人指揮AI操作三維軟件”。Blender MCP把Blender的Python API封裝成AI容易調(diào)用的工具Antigravity負(fù)責(zé)把自然語言需求拆解成一個(gè)一個(gè)具體的Blender操作并執(zhí)行。相當(dāng)于AI是設(shè)計(jì)師Blender是畫板你只需要跟設(shè)計(jì)師說清楚需求和約束。補(bǔ)充一點(diǎn)這并非要取代重型數(shù)字孿生平臺(tái)。它的定位是“原型驗(yàn)證器”和“項(xiàng)目加速器”。標(biāo)書演示、方案驗(yàn)證、教學(xué)演示、早期產(chǎn)品規(guī)劃這類場(chǎng)景里需要快速得到一個(gè)能看、能講、能迭代的三維場(chǎng)景這套組合的性價(jià)比極高。等場(chǎng)景復(fù)雜度上來了再把整個(gè)項(xiàng)目遷移到Unity或UE繼續(xù)深化那時(shí)候你的Blender源文件就是最好的藍(lán)圖。2. 環(huán)境搭橋Antigravity、Blender與Blender MCP插件的連線步驟2.1 Antigravity項(xiàng)目創(chuàng)建與MCP服務(wù)器配置先登錄Antigravity控制臺(tái)新建一個(gè)項(xiàng)目我給這個(gè)項(xiàng)目起名Warehouse-DT類型選擇Agent構(gòu)建。創(chuàng)建完成之后第一件事不是急著寫提示詞而是把項(xiàng)目背景和建模規(guī)范寫進(jìn)項(xiàng)目根目錄下的AGENTS.md文件。這個(gè)習(xí)慣是從實(shí)際踩坑里養(yǎng)成的。Agent的記憶和上下文有限你每次對(duì)話都重復(fù)“單位用米、對(duì)象按前綴命名”既啰嗦又容易遺漏。把這些規(guī)則固化在配置文件里之后每次運(yùn)行Agent它都會(huì)自動(dòng)加載這些上下文效果穩(wěn)定很多。我用的模板大致長這樣# Warehouse-DT 數(shù)字孿生項(xiàng)目 ## 項(xiàng)目目標(biāo) 在Blender中搭建一個(gè)40m x 20m智慧倉儲(chǔ)三維場(chǎng)景用于倉儲(chǔ)布局演示和數(shù)據(jù)聯(lián)動(dòng)驗(yàn)證。 ## 建模規(guī)范 - 單位統(tǒng)一使用米Meters場(chǎng)景尺寸必須符合現(xiàn)實(shí)物理尺度。 - 所有對(duì)象按前綴命名Shelf_, Pallet_, AGV_, Path_, Marker_, AOI_。 - 貨架標(biāo)準(zhǔn)規(guī)格雙排貨架寬2.4m高2.4m5層。 - 托盤采用1200mm x 1000mm標(biāo)準(zhǔn)規(guī)格。 - 模型優(yōu)先用基礎(chǔ)幾何體組合保持低多邊形限制單個(gè)對(duì)象面數(shù)。 - 每個(gè)貨架、托盤、AGV必須掛載唯一的ID屬性命名規(guī)則見項(xiàng)目說明。配置文件準(zhǔn)備好之后在Antigravity項(xiàng)目設(shè)置里找到MCP Server配置項(xiàng)。這里需要添加一個(gè)HTTP類型的MCP服務(wù)端點(diǎn)指向運(yùn)行Blender MCP插件的那臺(tái)機(jī)器。如果Agent是跑在本機(jī)上的填localhost地址和對(duì)應(yīng)端口就能連通如果Agent運(yùn)行在云端則需要填局域網(wǎng)IP或通過安全隧道暴露的公網(wǎng)地址。2.2 Blender端安裝Blender MCP插件并建立通道Blender端準(zhǔn)備工作分兩步。第一步是安裝Blender MCP服務(wù)端依賴在Blender內(nèi)置Python終端里執(zhí)行pip install blender-mcp如果你的Blender環(huán)境比較干凈這一步通常不會(huì)出問題。裝好之后打開Blender的偏好設(shè)置在插件管理里面找到blender-mcp相關(guān)插件并啟用。啟用后插件會(huì)提供一個(gè)“啟動(dòng)MCP Server”的按鈕點(diǎn)擊它會(huì)拉起一個(gè)本地服務(wù)同時(shí)終端會(huì)打印出監(jiān)聽端口和連接地址。默認(rèn)端口常見是9876但也可能因?yàn)榄h(huán)境不同而有變化一定要以插件啟動(dòng)日志里打印的地址為準(zhǔn)。為了驗(yàn)證服務(wù)確實(shí)起來了可以直接在瀏覽器里訪問對(duì)應(yīng)的HTTP地址能看到一個(gè)響應(yīng)頁面或者收到連接回調(diào)說明服務(wù)正常。接著回到Antigravity項(xiàng)目的MCP配置里把服務(wù)類型選為streamable-httpURL填上剛才看到的地址。保存配置后Antigravity會(huì)自動(dòng)測(cè)試連通性。這一步滿不滿分不重要后續(xù)真正執(zhí)行Agent任務(wù)時(shí)才能驗(yàn)證完整鏈路。配置參數(shù)我整理了一張表方便直接對(duì)照配置項(xiàng)推薦值說明MCP模式streamable-http適用于Agent在外部運(yùn)行需要HTTP端點(diǎn)服務(wù)地址http://localhost:9876 或局域網(wǎng)IP以插件啟動(dòng)日志為準(zhǔn)Blender版本4.2 LTS及以上插件兼容性更好場(chǎng)景單位Metric / Meters必須在Blender場(chǎng)景屬性里設(shè)置渲染引擎Eevee原型階段渲染快后期再換Cycles這里有個(gè)容易忽略的問題如果Blender跑在你本地而Antigravity的Agent跑在云端Agent是無法直接訪問你電腦上的localhost的。解決辦法要么把Blender MCP服務(wù)部署到一臺(tái)內(nèi)網(wǎng)或公網(wǎng)可訪問的機(jī)器上要么把Antigravity的Agent運(yùn)行環(huán)境拉到本地網(wǎng)段。這一步別偷懶鏈路不通后面全白搭。2.3 第一次握手驗(yàn)證Agent能操作Blender環(huán)境配好后先在Antigravity里發(fā)一條最簡單的指令驗(yàn)證鏈路“檢查Blender連接刪除默認(rèn)場(chǎng)景中的所有物體然后新建一個(gè)名為Ground的平面尺寸為50米乘30米?!闭G闆r下Agent會(huì)調(diào)用一系列Blender MCP工具Blender視圖里能看到默認(rèn)的Cube被刪除一個(gè)大型平面被創(chuàng)建出來。如果這一步通了整個(gè)管線就證明已經(jīng)打通了。我實(shí)測(cè)的時(shí)候這個(gè)驗(yàn)證過程一般不超過兩分鐘。這里有一個(gè)必須提前說的常見坑Agent返回“連接失敗”但Blender里操作其實(shí)已經(jīng)執(zhí)行了。這種詭異情況通常是因?yàn)閰f(xié)議握手成功但消息回傳超時(shí)或者生產(chǎn)端把錯(cuò)誤信息吞掉了。遇到這種情況先別急著懷疑環(huán)境直接看Blender場(chǎng)景里有沒有變化再檢查本地MCP插件的終端日志。日志比Agent的報(bào)錯(cuò)信息誠實(shí)得多。3. 動(dòng)手實(shí)操從空白場(chǎng)景到完整智慧倉儲(chǔ)模型的四步流程3.1 建庫前先定規(guī)劃尺寸、單位、命名規(guī)范建模前不規(guī)劃后面一定亂成一鍋粥。我這次以40米長、20米寬、6米高的倉庫為例。整個(gè)場(chǎng)景劃分為四個(gè)功能區(qū)收貨區(qū)、貨架存儲(chǔ)區(qū)、發(fā)貨區(qū)、AGV通道。收貨區(qū)放在倉庫左邊規(guī)劃尺寸5米乘8米貨架存儲(chǔ)區(qū)在中間偏右分成兩組雙排貨架發(fā)貨區(qū)在右側(cè)也是5米乘8米AGV主通道寬度設(shè)計(jì)為2米連接收貨和發(fā)貨區(qū)。通道寬度這個(gè)參數(shù)是有講究的。AGV在通道里要完成直線行駛和L型轉(zhuǎn)彎轉(zhuǎn)彎半徑通常按1米設(shè)計(jì)所以主通道低于2米就會(huì)出現(xiàn)轉(zhuǎn)彎死區(qū)。我們給Agent下指令時(shí)要明確交代這些尺寸而不是讓它自由發(fā)揮。這里順便提一下3D點(diǎn)云拉框。如果倉庫現(xiàn)場(chǎng)有激光雷達(dá)或結(jié)構(gòu)光相機(jī)掃描出來的點(diǎn)云底圖第一步應(yīng)該先把點(diǎn)云導(dǎo)入Blender作為參考底圖然后用Cube包圍盒把每個(gè)貨架區(qū)域“框”出來這就是數(shù)字孿生里常說的AOI拉框。這些Cube統(tǒng)一用AOI_前綴命名后續(xù)無論是做點(diǎn)云標(biāo)注、數(shù)據(jù)對(duì)應(yīng)還是算法訓(xùn)練都能直接復(fù)用這個(gè)標(biāo)準(zhǔn)。正式開始建模前還有兩個(gè)動(dòng)作必須在指令里明確。第一是單位設(shè)置在Blender的場(chǎng)景屬性里強(qiáng)制Metric加Meters防止后期導(dǎo)入導(dǎo)出時(shí)出現(xiàn)放大縮小100倍的混亂。第二是所有對(duì)象命名規(guī)范我給Agent定的規(guī)則是貨架Shelf_01_01表示1號(hào)貨架第1排托盤Pallet_0101表示1號(hào)貨架01層的第1個(gè)托盤位AGV用AGV_01、AGV_02遞增。這套命名在后面的數(shù)據(jù)綁定階段會(huì)救你的命。3.2 貨架和托盤讓Agent批量生成標(biāo)準(zhǔn)件規(guī)劃完之后我給Antigravity發(fā)了一條指令大致內(nèi)容是“在地面區(qū)域創(chuàng)建5組雙排貨架每組寬2.4米、高2.4米、5層立柱和橫梁用金屬灰色材質(zhì)貨架間距對(duì)齊AGV通道邊緣?!庇幸馑嫉氖茿gent在執(zhí)行這種批量重復(fù)任務(wù)時(shí)表現(xiàn)得相當(dāng)穩(wěn)定。它會(huì)自動(dòng)寫一個(gè)循環(huán)腳本在Blender里把5組貨架按等間距創(chuàng)建出來。如果你讓它一次性創(chuàng)建50組它大概率也能跑完但中間一旦某個(gè)參數(shù)寫錯(cuò)排查起來就頭大。我的習(xí)慣是第一次先建5組看整體比例和位置沒有問題再復(fù)制陣列擴(kuò)展數(shù)量。寧可多花幾次對(duì)話也不要一次吃成胖子。托盤建模的要點(diǎn)在于標(biāo)準(zhǔn)尺寸。我們用的是1200毫米乘1000毫米的標(biāo)準(zhǔn)木托盤頂部放一個(gè)簡化的周轉(zhuǎn)箱周轉(zhuǎn)箱顏色可以做區(qū)分藍(lán)色表示在庫、綠色表示待出庫、紅色表示異常。這一步看起來只是顏色選擇實(shí)際上為后期數(shù)據(jù)驅(qū)動(dòng)模型留了伏筆等真正接到WMS庫存數(shù)據(jù)時(shí)顏色可以直接映射庫存狀態(tài)。這里給一個(gè)提示詞模板實(shí)測(cè)下來效果不錯(cuò)在Blender當(dāng)前場(chǎng)景中批量創(chuàng)建托盤模型 - 托盤規(guī)格長1.2米寬1.0米高度0.15米 - 托盤上增加周轉(zhuǎn)箱尺寸0.6m x 0.4m x 0.3m - 周轉(zhuǎn)箱材質(zhì)顏色藍(lán)色 - 所有物體按Pallet_前綴命名并添加到Storage集合中 - 將托盤放置在貨架每層的地板上每個(gè)貨位放置1個(gè) - 完成后在輸出中列出已創(chuàng)建的托盤數(shù)量和位置做完這步一個(gè)倉儲(chǔ)場(chǎng)景的“骨架”和“血肉”基本到位了。地面、貨架、托盤、區(qū)域劃分都有了接下來是在這個(gè)基礎(chǔ)上做動(dòng)態(tài)元素。3.3 AGV小車與運(yùn)行路徑從靜態(tài)模型到可模擬動(dòng)線AGV建模沒有什么神秘感客戶并不要求看到齒輪和電路板他們要的是能體現(xiàn)“這個(gè)設(shè)備在這條路上跑”的邏輯。我用最簡單的組合方式一個(gè)底盤Cube加一個(gè)頂部箱體Cube再在車體頂部加一個(gè)圓環(huán)作為識(shí)別標(biāo)識(shí)整體掛在一個(gè)名為AGV_01的空物體下面。這樣后面要做動(dòng)畫或接入真實(shí)位置數(shù)據(jù)時(shí)直接控制空物體的位移就夠了。AGV的初始位置放在收貨區(qū)充電樁旁邊指令里要寫清楚坐標(biāo)。路徑是本小節(jié)的重點(diǎn)我讓Agent用Bezier曲線繪制AGV從收貨區(qū)到貨架區(qū)、再到發(fā)貨區(qū)的行駛線路。如果指令里只說“畫一條路徑”Agent生成的曲線大概率是隨機(jī)的后期調(diào)整起來非常痛苦。正確做法是顯式指定控制點(diǎn)坐標(biāo)起點(diǎn)在收貨區(qū)出口途經(jīng)貨架區(qū)主通道中點(diǎn)終點(diǎn)在發(fā)貨區(qū)入口每個(gè)控制點(diǎn)都給出具體坐標(biāo)值。路徑曲線生成之后需要在曲線屬性里設(shè)置粗細(xì)讓它在視圖里一眼可見。再給路徑指定一個(gè)Emission自發(fā)光材質(zhì)主色用綠色。這條路徑線不只是好看它還是后續(xù)仿真和調(diào)度的關(guān)鍵。實(shí)際的車輛調(diào)度系統(tǒng)如Nav2這類導(dǎo)航方案用的也是類似“關(guān)鍵點(diǎn)路徑”的思路我們?cè)跀?shù)字孿生場(chǎng)景里把這些路徑控制點(diǎn)坐標(biāo)導(dǎo)出就是現(xiàn)成的waypoint表可以直接和調(diào)度算法做聯(lián)動(dòng)。這一步還涉及一個(gè)細(xì)節(jié)曲線生成要分步走。先讓Agent生成曲線再單獨(dú)發(fā)指令設(shè)置曲線粗細(xì)最后發(fā)指令設(shè)置材質(zhì)。一次性讓Agent完成三件事中間出錯(cuò)的概率明顯變大畢竟曲線對(duì)象和端點(diǎn)的選擇在MCP工具鏈里是需要精確匹配的。3.4 預(yù)留孿生數(shù)據(jù)接口命名、層級(jí)與Custom Properties模型建完不接數(shù)據(jù)就只是個(gè)空殼子不算真正的數(shù)字孿生。所以在建模階段就要預(yù)留數(shù)據(jù)接口最基礎(chǔ)的兩個(gè)動(dòng)作是層級(jí)整理和自定義屬性掛載。層級(jí)整理靠的是Blender的Collection體系。我給這個(gè)項(xiàng)目分好了四個(gè)集合Structure放地面和墻體Storage放貨架和托盤Equipment放AGV和路徑DataUI放文本信息面板。所有對(duì)象必須在對(duì)應(yīng)集合下面嚴(yán)禁孤兒對(duì)象堆在場(chǎng)景根目錄。這個(gè)規(guī)則看似死板但場(chǎng)景一復(fù)雜沒有Collection管理的文件根本沒法看。自定義屬性是Blender里非常好用的機(jī)制選中任何一個(gè)對(duì)象在對(duì)象屬性面板里可以添加自定義字段。比如選中AGV_01添加一個(gè)名為status的字符串屬性初始值為idle再選中某組貨架添加temperature和stock_qty兩個(gè)屬性。這些字段看起來不起眼但它們是未來數(shù)據(jù)回灌的“插座”。Antigravity生成的Agent可以通過MCP工具直接讀寫這些屬性后續(xù)庫存數(shù)據(jù)進(jìn)來腳本直接更新對(duì)應(yīng)屬性值模型狀態(tài)就會(huì)跟著變化。信息展示層我用Text對(duì)象來做。在場(chǎng)景右上區(qū)域創(chuàng)建幾個(gè)文本對(duì)象顯示“溫度24.5C / 濕度45%RH / 在庫數(shù)量1280”這些文字對(duì)象放進(jìn)DataUI集合后期Web端或仿真平臺(tái)可以通過API實(shí)時(shí)刷新。說到后續(xù)擴(kuò)展如果要接點(diǎn)云場(chǎng)景理解、3D卷積自編碼器特征提取這類算法前期規(guī)范的命名和包圍盒對(duì)齊也能幫你省掉大量拉框標(biāo)注的人工成本。4. 踩坑記錄Agent建模過程中最容易翻車的五個(gè)環(huán)節(jié)4.1 Agent執(zhí)行中斷報(bào)錯(cuò)信息怎么讀跑Agent建模時(shí)遇到最多的就是執(zhí)行中斷。Antigravity控制臺(tái)經(jīng)常會(huì)彈出一句“agent execution terminated due to error”第一次看到這個(gè)報(bào)錯(cuò)我整個(gè)人是懵的因?yàn)殄e(cuò)誤信息太泛了。后來總結(jié)出規(guī)律這種中斷多數(shù)發(fā)生在Blender側(cè)出現(xiàn)異常比如Python解釋器內(nèi)存占用過高或者執(zhí)行了超長時(shí)間的批量循環(huán)導(dǎo)致會(huì)話超時(shí)。解決辦法很樸素。把大任務(wù)拆小每條指令只讓Agent做一類事情。一次創(chuàng)建5組貨架沒問題一次創(chuàng)建50組就容易被干掉一次生成一條路徑?jīng)]問題一次生成10條交叉路徑就非常容易讓Blender卡死。另外Agent運(yùn)行期間Blender里別開著材質(zhì)預(yù)覽和實(shí)時(shí)渲染那些功能極其消耗資源。還有一類報(bào)錯(cuò)是“eligibility check failed”這個(gè)一般跟項(xiàng)目權(quán)限或賬號(hào)資格有關(guān)。處理辦法是先檢查登錄狀態(tài)是否過期、當(dāng)前賬號(hào)是否有運(yùn)行Agent的權(quán)限實(shí)在不行換個(gè)節(jié)點(diǎn)網(wǎng)絡(luò)再試。這類問題不是代碼層面的排錯(cuò)重心放在賬號(hào)和網(wǎng)絡(luò)環(huán)境上。4.2 MCP連接失敗五類典型場(chǎng)景排查MCP連接失敗是第二個(gè)高頻問題我遇到過的情況可以分成五類。第一類插件沒啟動(dòng)。Blender里沒點(diǎn)“啟動(dòng)MCP Server”端口自然沒有監(jiān)聽。排查方法是在命令行執(zhí)行netstat -ano命令看目標(biāo)端口是否有進(jìn)程在監(jiān)聽。第二類監(jiān)聽正常但連接超時(shí)。這種情況通常是防火墻攔了入站連接尤其是Windows系統(tǒng)第一次啟動(dòng)MCP服務(wù)時(shí)會(huì)彈出防火墻授權(quán)窗口一旦點(diǎn)了取消后面就再也連不上。到系統(tǒng)防火墻設(shè)置里把對(duì)應(yīng)端口放行即可。第三類最坑的一種Agent在云端根本訪問不了本地localhost。你本地服務(wù)起來再多也沒用。解決思路是要么在配置MCP時(shí)填寫局域網(wǎng)內(nèi)可達(dá)的地址要么用安全的方式把服務(wù)暴露到Agent可以訪問的地址。生產(chǎn)級(jí)別的調(diào)試最好把Blender裝到有公網(wǎng)IP的專用機(jī)器上。第四類Blender界面卡死但進(jìn)程還在。這種情況多發(fā)生在插件主線程被Agent的長任務(wù)阻塞時(shí)視圖半天不刷新你以為掛了其實(shí)它還活著。先等幾分鐘恢復(fù)如果始終沒反應(yīng)就強(qiáng)制重啟Blender再重新啟動(dòng)MCP Server。實(shí)測(cè)下來頻繁切換視圖著色模式最容易觸發(fā)這個(gè)問題。第五類服務(wù)恢復(fù)正常但Agent還是報(bào)連接失敗。這種時(shí)候把MCP Server在一端重新啟動(dòng)一次相當(dāng)于重啟服務(wù)清空緩存比反復(fù)檢查配置有效得多。4.3 模型“看著不對(duì)”單位、著色模式與父子關(guān)系檢查模型生成出來但是視覺上不對(duì)先別急著怪Agent我先說三個(gè)最重要的檢查項(xiàng)。第一是單位錯(cuò)亂。Blender里如果單位設(shè)置成了厘米但是指令里按米描述尺寸生成的模型就會(huì)巨大無比或者縮成一點(diǎn)。檢查場(chǎng)景屬性里的Unit System確認(rèn)是Metric且Scale為0.01。這個(gè)細(xì)節(jié)導(dǎo)致的經(jīng)典癥狀是導(dǎo)入模型后整個(gè)場(chǎng)景放大100倍。第二是著色模式問題。很多“沒材質(zhì)”的現(xiàn)象其實(shí)是視圖著色模式停在Solid線框模式模型看起來灰撲撲的甚至只剩線框。在Blender右上角把視圖切換為Material Preview真實(shí)材質(zhì)效果立刻就出來了。這個(gè)不是建模錯(cuò)誤是顯示設(shè)置問題。第三是父子關(guān)系跑偏。父級(jí)物體帶著旋轉(zhuǎn)角度子級(jí)物體創(chuàng)建時(shí)坐標(biāo)就跟著偏移。遇到這種情況直接選中所有父級(jí)物體執(zhí)行Apply All Transforms把變換歸零再讓Agent基于世界坐標(biāo)重新生成。模型看起來“歪”的時(shí)候多半是這個(gè)原因。我把這套檢查順序總結(jié)成了口訣“單位、著色、父子”讓團(tuán)隊(duì)的實(shí)習(xí)生先按這三項(xiàng)自查再找我確認(rèn)效率一下子高了很多。最后說一句實(shí)際體會(huì)Antigravity Blender MCP這套組合最適合解決的問題是把一個(gè)模糊的需求快速變成一個(gè)能看、能講、能迭代的三維場(chǎng)景。它不會(huì)讓建模師失業(yè)反而把數(shù)字孿生項(xiàng)目起步階段的時(shí)間成本壓縮到半天以內(nèi)。這個(gè)項(xiàng)目做下來我最大的感悟是在讓AI動(dòng)手之前把命名規(guī)范、單位制式、場(chǎng)景分層這三件地基打牢后面所有數(shù)據(jù)聯(lián)動(dòng)都會(huì)順滑很多。下篇我準(zhǔn)備繼續(xù)寫數(shù)據(jù)回灌的部分——真實(shí)庫存數(shù)據(jù)和傳感器狀態(tài)怎么驅(qū)動(dòng)這些模型動(dòng)起來以及如何導(dǎo)出GLTF到前端完成最終展示。如果讀者朋友正在推進(jìn)類似項(xiàng)目建議從小場(chǎng)景開始20米見方的庫房、5組貨架、2臺(tái)AGV先完整跑通一次再大規(guī)模鋪開。