"帮我在原点创建一个半径为 0.5 的圆柱,高度 1.2,再给侧面加一个金属材质。"如果把这句话打进 Qoder 的对话框,几秒钟后 Blender 的场景里就会真的出现这个圆柱。这正是 Qoder + Blender MCP 带来的自然语言建模体验:AI 通过 MCP 协议听懂你的话,然后直接操作 Blender 建出模型。
这套组合解决的是很多 3D 创作者和开发者的共同痛点:以前想让 AI 帮忙干活,要么手动写 Blender Python 脚本,要么在各种插件和命令行之间来回折腾。MCP(Model Context Protocol,模型上下文协议)把"AI 与软件之间"的通信方式标准化了,Qoder 负责理解你的自然语言,Blender MCP 服务端负责把指令变成 Blender 能执行的 Python 调用。下面我会完整记录从环境准备、配置连接,到第一次成功操作的整个过程,包括我踩过的坑和你可能直接用得上的排查技巧。无论你是刚接触 Blender 的新手,还是已经在用 AI IDE 的开发者,只要想试试"用嘴建模",这篇文章都值得看完。
1. MCP 到底是什么:AI 与 Blender 之间的翻译官
1.1 先把 MCP 的分工拆开
MCP 是 Anthropic 在 2024 年底开源的一套开放协议,名字很直白:Model Context Protocol,模型上下文协议。它要解决的问题很实际:大语言模型最擅长的是生成文本,而 Blender、Photoshop、数据库这类工具只认自己的指令。以前要让 AI 操作某个软件,只能靠软件厂商单独做私有接口,或者开发者自己写桥接脚本,接一个软件就写一遍,又慢又难维护。MCP 的意义在于把这些接口标准化成同一种格式。
一条 MCP 链路里通常有四个角色:
- MCP Host(宿主):承载 AI 对话能力的应用,本文场景里就是 Qoder;
- MCP Client(客户端):宿主内部负责发出请求、接收返回结果的模块;
- MCP Server(服务端):暴露"能力"的中间程序,比如"创建物体"、"应用修改器"这样的工具函数;
- 底层服务:真正被操作的对象,这里就是 Blender。
以"生成一个正方体"为例,你打出这句话之后,Qoder 里的 LLM 会先把自然语言解析成一次工具调用意图,通过 MCP Client 告诉 Blender MCP Server:"调用 create_object,参数是正方体、尺寸 2、坐标原点"。服务端收到请求后,调用 Blender 的 Python API 生成网格,再把执行结果返回给 AI;AI 最后整理成一句人话回复你:"已创建立方体 demo_cube,尺寸 2×2×2。"
这个过程并不神秘,本质上就是一个标准化的远程调用。但标准化带来的好处是巨大的:理论上同一个 MCP Server 可以被任何支持 MCP 的 AI 应用复用,同一个 AI 应用也能同时连接几十个不同的 MCP Server。这也是为什么最近"某软件接入 MCP"的消息到处都是,因为大家突然发现,AI 与工具之间的"巴别塔"被统一了。
1.2 我为什么选 Qoder 当 MCP Host
能当 MCP Host 的 AI IDE 其实不少,Cursor、Windsurf、Codex,还有各种国产 IDE,热词里就有人拿 Qoder 和 Codex 对比。我最终选 Qoder,主要看中四点。
第一,MCP 配置入口做得清楚。你在设置里能找到独立的 MCP 管理面板,支持全局配置和项目级配置,不需要写底层代码。第二,模型管理灵活。Qoder 分国际版和国内版(Qoder CN),区别主要在于能连接的模型服务不同,你可以按实际能访问的模型来选择;只要选了支持 Function Calling / 工具调用的模型,MCP 工具就能正常触发。第三,工具调用过程可视化。Qoder 的对话界面会明确显示"正在调用哪个工具、参数是什么",这点太重要了——排查 MCP 问题时,你能一眼看出是 AI 没理解意图,还是工具参数传错了。第四,也和我们做 3D 工作直接相关:Qoder 能读取工作区文件,把 Blender 项目文档、数据文件放在同一个工作区里,AI 可以一边看参考资料一边调模型,相当于多了一个"设计助理"。
如果你用的是别的 IDE,下面讲的 MCP 配置逻辑完全通用,只是入口位置不同。我觉得这套配置逻辑对任何想玩 MCP 的人都算有点参考价值。
1.3 先认清边界:它擅长什么,不擅长什么
开吹之前必须泼一盆冷水:自然语言建模目前最擅长的是"参数化、批量、可控"的操作,也就是创建基础几何体、摆位置、调材质、加修改器、批量生成重复结构这类任务。它不擅长精细雕刻、拓扑布线、贴图手绘这些需要极高精度和艺术判断力的工作,至少在现阶段,AI 生成的雕刻结果离"可用"还很远。
所以我的定位一直是:把 AI 当成一个"会写 Blender Python 脚本的实习生"。指令里参数给得越明确,成功率越高;指令越抽象("帮我做一个好看到能拿去竞标的花瓶"),AI 就越容易产出奇怪的东西。认清楚这个边界,你才不至于在第一次翻车之后就把整套方案打死。
2. 环境准备三步走:Blender、Qoder 与 MCP 服务端
2.1 安装 Blender:版本别太老,也别追最新
Blender 是开源免费的,官网直接下载。版本选择我的建议是:别用太老的版本,3.0 之前的版本就别考虑了,MCP 插件的调用经常依赖新版 Python 接口;但也别在大版本刚发布时立刻冲上去当主力,插件兼容性往往跟不上一两个月的跨度。我当时用的是 4.2 LTS,社区几个主流 blender-mcp 实现都明说支持 4.x,跑起来很顺。
安装时有个特别容易忽略的点:Blender 自带 Python 解释器,跟系统里装的 Python 是两码事。后面排坑我会专门展开,这里先记住一个原则:凡是给 Blender 插件装的依赖,一律用 Blender 内置 Python,别拿系统 pip 乱来,否则插件加载时大概率会报缺少模块。
2.2 安装 Qoder 并选对模型
Qoder 的安装没什么特别,官网下载对应平台的安装包就行。装好之后第一件事不是配置 MCP,而是先在设置里把模型选好。这里的关键是:一定要选支持工具调用(Function Calling)的模型,否则 MCP 工具根本不会被触发。
怎么判断模型支不支持?Qoder 的模型列表里通常会有标注,常见的支持工具调用的模型一般都能直接用。如果不支持,你会看到 AI 在对话里绕来绕去,就是不动工具——叫它创建物体,它给你打一段 Python 代码文本让你自己复制,那就说明模型选错了。我第一次就在这儿浪费了二十分钟,反复检查 MCP 配置,结果问题出在模型身上。所以我的建议是先在 Qoder 里问一句简单的"3+5=?",确认对话正常,再进入 MCP 环节。
另外说一下 Qoder CN 的模型与配额:国内版的模型池和计价逻辑跟国际版不同,热词里有人问"1 credits 等于多少 token"之类的问题,这类换算在不同模型之间并不统一。我的建议是不要盯着 credits 换算纠结,而是在实际对话里观察一次工具调用的消耗,几次之后你自然会对"一条建模指令大概吃多少额度"有体感。额度是小事,模型支不支持工具调用才是大事。
2.3 安装 Blender MCP 服务端:插件方式最省心
社区里的 Blender MCP 实现不止一个,我最后用的是以 Blender 插件形式提供服务端的版本。选择标准其实就一条:看它是不是"插件自带服务端"。有些实现在 Blender 外部单独跑一个 Python 服务,再通过插件桥接,多一个环节就多一层出错的可能;插件自带服务端的版本,启动 Blender 后在侧边栏点一下就能跑,省心得多。
以我用的实现为例,安装步骤是这样的:
- 从项目 Releases 页面下载 blender-mcp 的 zip 包,不用解压;
- 打开 Blender,菜单 Edit > Preferences > Add-ons,右上角 Install...,选中 zip;
- 在插件列表里搜索 MCP,勾选启用;
- 在 3D 视图右侧的 N 面板找到 MCP 选项卡,点 Start Server。
启动之后,面板上会显示服务地址和端口,比如 ws://localhost:9000 或者 http://localhost:9876/mcp,不同实现端口和路径不一样。你只需要确认出现了类似 "Server started" 的状态,或者地址行不再是灰色不可选,就说明服务端已经活了。
2.4 动手验证:服务端到底起没起
配置 Qoder 之前,先花十秒钟确认服务端真的在监听。我习惯的方式是直接用 curl 打一下地址(如果实现支持 HTTP 请求的话):
curl http://localhost:9876/mcp如果返回"连接拒绝"或者直接超时,说明服务端根本没起来,先回 Blender 检查插件状态。如果能返回一些内容(哪怕是 JSON 报错),起码说明端口是通的,后面再谈 MCP 握手。
这一步的意义在于给排错分层:先确认"服务端起没起",再确认"地址配没配对",最后确认"握手成没成功"。按这个顺序排查,能少走很多弯路。很多人在配置阶段折腾半天,最后发现只是 Blender 窗口被最小化、服务端进程根本没保留住,这种低级错误最浪费生命。
3. 关键一步:在 Qoder 中配置 MCP 连接
3.1 找对入口,理解两种传输方式的区别
Qoder 的 MCP 配置入口在不同版本里位置略有不同,但大方向一致:在设置里找 "MCP" 或 "Model Context Protocol" 菜单。打开后是一个服务器列表,初始为空,旁边有新增按钮。点击新增之后要填三样东西:服务器名称、传输方式、命令或地址。
很多人卡在传输方式上,因为不太理解 stdio 和 HTTP 的区别。我做了个直观对比:
| 传输方式 | 工作方式 | 适用场景 |
|---|---|---|
| stdio | Qoder 本地启动一个子进程,通过标准输入输出通信 | 服务端是独立命令行程序,比如 npx 启动的某个 MCP Server |
| HTTP / SSE | 连接一个已经跑起来的网络地址 | 服务端已经常驻在某个端口上,比如 Blender 插件 |
我们的场景显然用 HTTP 方式,因为 Blender 插件已经在本地端口上等着了。如果你用 stdio 模式去连一个 HTTP 服务,结果必然是连接失败。这个原理搞清楚之后,配置出错时你就能第一时间判断是选错模式还是填错地址。
3.2 我的实际配置写法
Qoder 支持项目级 MCP 配置,我推荐写到项目根目录的 .mcp.json 里,方便版本管理和团队复用。我当时用的配置大致是这样:
{ "mcpServers": { "blender-local": { "type": "http", "url": "http://localhost:9876/mcp", "enabled": true } } }请注意,这个 url 不是拍脑袋写的,必须和 Blender 插件面板上显示的地址完全一致。不同实现的路径可能是 /mcp、/sse 或者直接 ws:// 前缀,以插件面板显示为准。具体字段名也会随 Qoder 版本略有差异,但"服务地址 + 启用开关"的逻辑不变,照着填就行。我犯过最蠢的错误是照抄文档里的示例端口 9000,而自己的服务端实际跑在 9876,结果自然连不上。
另外,如果 Qoder 报"跨域"或 CORS 相关的错误,先别慌,通常不是网络不通,而是服务端不允许 Qoder 的请求来源。部分插件在面板上有个 Enable CORS 的开关,勾上之后刷新连接就能解决。这个坑很隐蔽,因为报错信息往往不是"端口拒绝",而是"握手失败",你要是不知道 CORS 这回事,可能会在端口和防火墙里折腾一个小时。
3.3 第一次握手:看到工具列表才算通
配置保存之后,回到 MCP 面板点连接或刷新。正常情况下,几秒后你会看到一个工具列表刷出来,里面是一长串以 create_、select_、modify_、apply_ 开头的方法名,比如 create_object、select_object、modify_object、apply_material、list_objects 之类。看到这个列表,才算真正打通了。
如果列表是空的或者连接图标是红的,我的排查顺序固定是这五步:
- 回 Blender 确认 MCP Server 还开着。窗口最小化不代表进程活着,有时候面板按钮会自己跳回 Stop;
- 核对端口和 URL 与插件面板逐字符一致;
- 检查端口是否被占用:Windows 下
netstat -ano | findstr 9876,拿到 PID 后去任务管理器结束残留进程; - 确认 Qoder 当前选用的模型支持工具调用;
- 打开 Qoder 的日志面板(一般 Ctrl+Shift+` 能呼出),里面有 MCP 启动日志,握手失败的真正原因通常就写在里面。
我第一次跑通时,工具列表刷出来三十多个函数,说实话那一刻比当年跑通 Hello World 还有成就感。因为这意味着"自然语言 → AI 理解 → Blender 执行"这条链路上,最后一个障碍已经被清除了。
4. 第一次自然语言建模实操:从一句指令到 Blender 里的实体
4.1 第一句指令:创建立方体
连接成功后,我特意没有一上来就搞复杂模型,先让 Qoder 建一个立方体。我在对话框里输入:
"请在 Blender 场景的原点创建一个立方体,尺寸 2x2x2,名字叫 demo_cube。"
几秒钟后,Qoder 回复里显示它调用了 create_object 工具,传参大概是 {"type": "CUBE", "location": [0,0,0], "size": [2,2,2], "name": "demo_cube"},然后工具返回了 success。我把视线切到 Blender 窗口,场景里确实多了个立方体,名字就叫 demo_cube。
这个结果本身平平无奇,但它的意义在于验证了整条链路:意图解析正确、参数生成正确、Python 调用执行成功、场景实时更新。从这条链路往下走,所有建模指令都只是换不同的参数而已。所以我强烈建议你的第一次实操也从最笨的立方体开始,先把链路跑通,再谈花活。
4.2 修改属性:让 AI 动手摆弄物体
创建物体只是热身,真正好用的是属性修改。这一阶段建议按"属性分组"来测试。先测移动:
"把 demo_cube 移动到 X=3, Y=0, Z=1 的位置。"
再测旋转:
"把 demo_cube 绕 Z 轴旋转 45 度。"
再测缩放:
"把 demo_cube 在 X 方向缩放为原来的 1.5 倍。"
这些指令通常都会走到同一个 modify_object 类的工具,参数里带上 location、rotation、scale。实测下来我的感受是:AI 对"移动""旋转"这种语义确定、数值明确的指令理解非常准,因为这些词在 3D 工具里没有歧义。但如果你说"把方块斜着放",AI 就会犯难,它不知道"斜"是转 15 度还是 30 度,也不知道绕哪个轴。所以我在第二次实操之后养成了一个习惯:凡是涉及数值的指令,一定把具体数值带上,不给 AI 自由发挥的空间。
提示:如果你不确定 AI 会怎么理解某个参数,就在指令里把边界条件全部写清楚,效果立竿见影。模糊指令只会换来模棱两可的建模结果。
4.3 上材质:第一道"语义坑"
接着测试材质,我输入:
"给 demo_cube 添加一个名为 mat_red 的材质,基础色设为红色,金属度 0.8,粗糙度 0.2。"
工具调用链一般是先创建材质再赋给物体。这一步我踩了实打实的坑:工具返回"材质创建成功",但我在 Blender 材质预览里看不到颜色。后来发现是参数格式问题——Blender 里颜色有时用 RGBA 浮点数组(0 到 1),有时用十六进制字符串,AI 传混了,把 ASCII 的"red"当成颜色值传了进去。解决办法不复杂,在指令里把格式说死:
"基础色用 RGB 三元组形式,每个通道数值范围 0 到 1,红色就是 (1, 0, 0)。"
把约束前置之后,材质创建就再也没出过格式问题。这个经验几乎可以推广到所有 MCP 场景:你不确定 AI 会怎么理解参数时,就在指令里把边界条件全部交代清楚,不要让 AI 去猜格式、猜单位、猜坐标基准。
4.4 连续对话建模:上下文就是生产力
基础功能全部验证完之后,我开始尝试连续对话,这才是自然语言建模最爽的部分:
第一轮:"创建一个小球,半径 0.5,放在坐标 (0, 0, 2)。"
第二轮:"复制这个小球,放到 (1, 0, 2),把它缩小一半。"
第三轮:"给两个小球都加上发光材质,发光强度 3。"
第四轮:"在 (2, 0, 2) 再创建一个小球,命名规则跟前面保持一致。"
连续对话的体验是:AI 能记住之前的约定,比如物体命名规则、坐标习惯、材质列表,你不需要每条指令都说得像写给机器人一样完整,它会自动复用上一轮的信息。我实测四轮对话下来准确率很高,基本没有翻车。
这也是自然语言建模和"固定脚本"的本质区别:脚本是写死的逻辑,一旦参数变了就得改代码;对话是理解加推理,AI 在你给的约束范围内自己做决策。所以我建议所有人在入门时都至少练一遍这种连续对话流程,它最能体现这套方案的真正价值。
5. 进阶场景与组合玩法
5.1 布尔运算:多步组合操作的试金石
当你对基础操作有手感之后,可以试试组合建模,比如布尔运算。我让 Qoder 做一个中间穿孔的圆环:
"创建一个圆环,外半径 2,内半径 1.5;再创建一个圆柱,半径 0.5,高度 3,让它穿过圆环中心;然后给圆环加一个布尔差值修改器,目标物体是圆柱。"
正常情况下,AI 会先创建两个物体,再调用 apply_modifier 类的工具给圆环附加 Boolean 修改器。执行完成后,圆环中间会出现一个圆柱形孔洞。
这一步真正考验的是 AI 的规划能力,因为它要自己决定"先创建谁、后创建谁、最后怎么关联"。如果你的模型工具调用能力偏弱,进程可能中途断掉,比如只建了圆柱却没做布尔。经验做法是放宽心态,拆成多条指令一步步确认,不要奢望一次连环操作全对。等到 AI 对上下文理解越来越强,这种多步任务的完成率会明显提升。
另外,热词里有人搜"blender 建模案例",其实这种布尔组合就是最经典的建模案例,它把"减法建模"的思路完整呈现出来了。你完全可以在此基础上继续拓展:螺丝孔、镂空窗框、机械零件上的凹槽,本质上都是同一套"先建主体再加修改器"的逻辑,只是参数不同而已。
5.2 外部数据驱动:高程数据变 3D 地形
热词里有人搜"Blender + 行政 + 高程数据建立 3D 模型",这套玩法配合 MCP 其实非常顺畅。思路是:先把高程数据(比如 GeoTIFF 转出的 CSV)整理好放在工作区,再让 Qoder 读数据、算网格、调 MCP 工具建地形。
我当时试过简化版,手头有一个 20×20 的高度矩阵,整理成 heightmap.csv 放在 Qoder 工作区,输入指令:
"读取工作区里的 heightmap.csv,根据高度数据在 Blender 中创建网格地形。每个格点间距 0.1,高度值乘以 0.05 作为 Z 轴偏移,网格名称 terrain。"
这一步里读 CSV 用的是 Qoder 自己的文件能力,不走 MCP;AI 把数据整理成顶点数组之后,再通过 MCP 的创建网格工具落成 Blender 网格。整个过程我只说了一句话,比手动画地形或者跑 GIS 插件快了一个数量级。
当然,这种玩法要求你至少懂一点点数据格式和 Blender 网格的概念,不然看不懂 AI 在干嘛。但门槛已经比"自己从头写一个导入脚本"低太多了,而且 AI 生成的网格可以直接进后续的建模流程。对这一块感兴趣的话,甚至可以做一个联动流水线:Python 爬取或预处理高程数据 → Qoder 读取分析 → MCP 建地形 → 继续对话加纹理、加公路、加建筑体块,整个"行政区地形可视化"项目可以在一个工作区里跑完。
5.3 批量生成:把确定性的优势放大
MCP 建模最有生产力的场景我觉得是批量生成。比如这个指令:
"在 X 轴 -5 到 5 的范围内,每隔 1 米生成一棵树的占位模型:树干用圆柱,半径 0.1,高 0.8;树冠用球体,半径 0.35;全部放在 Y=0 平面上。"
AI 会先把循环逻辑想好,然后反复调用创建工具。实测下来,20 个以内的批量生成效率和准确率都很稳定;超过 100 个时,工具调用次数太多,响应明显变慢,甚至可能撞上服务端的超时限制。我的建议是批量任务分几批做,或者干脆跟 AI 说"先建 10 个,剩下的我确认后再继续"。
批量任务里有一个隐藏风险:循环逻辑是 AI 生成的,它可能算错坐标或者漏掉某个物体。所以跑完以后一定在 Blender 的 Outliner 里过一遍物体列表,或者让 AI 自己调用 list_objects 工具盘一下点。我在第一次批量生成时就有两个物体重叠了,要是没检查直接拿去渲染,后面返工成本就大了。
6. 我踩过的坑:连接超时、工具失效与版本兼容
6.1 Blender 内置 Python 与系统 Python:混着用必出事
这是新手最容易踩的第一坑。有些 MCP 服务端实现需要额外安装 Python 依赖(比如 mcp 库、websockets),你以为在终端里 pip install 就完事,结果 Blender 插件一加载就报 ModuleNotFoundError。原因很简单:Blender 用的是自己内置的 Python,跟系统 Python 完全隔离。
如果插件文档明确写着"用 Blender 的 Python 环境安装依赖",你需要定位到 Blender 安装目录下的解释器,再执行类似命令:
<Blender安装目录>/4.2/python/bin/python.exe -m pip install mcp websockets如果文档没提,说明插件已经打包好了所有依赖,不用折腾。我的经验判断法:先开启插件看报不报错,报错缺什么再补什么,别一上来就乱装一堆包,反而把环境搞乱。热词里搜"blender 插件下载""blender 不显示 optix"的人不少,前者是安装源问题,后者是渲染器驱动问题,都跟 MCP 依赖无关,排错时先把它们摘出去,别混在一起查。
6.2 端口占用与服务端"假死"
连续建模测试中我遇到过最恶心的情况是:Qoder 显示正在调用工具,但 Blender 里毫无反应,一直转圈。排查半天发现是上一个测试的残留进程还占着端口。Windows 下定位方法很直接:
netstat -ano | findstr 9876拿到 PID 之后,去任务管理器把对应的进程结束掉,再回 Blender 重新启动服务端,问题立刻消失。从那以后我养成一个习惯:每轮完整测试结束,就在插件面板上手动 Stop 一下服务,下一轮再重新启动,不给端口残留留机会。
6.3 工具返回成功,但结果不对:命名与集合的隐性坑
还有一种更隐蔽的坑:MCP 工具返回了 success,但你在 Blender 里找不到新物体。我遇到过两种情况。第一种是物体创建到了别的 Collection(集合)里,而当前视角根本没注意到;第二种是命名冲突——AI 要创建的 demo_cube 已经存在,Blender 自动改名成 demo_cube.001,可 AI 后续的修改指令还盯着 demo_cube,于是"改了个寂寞"。
解决办法非常朴素:让 AI 在执行关键操作前先调用 list_objects 工具,把场景现状摸清楚再动手。我现在常挂在嘴边的一句指令是:"先列出场景中所有物体,再执行后续操作。"这句指令成本极低,但能避免一大半命名空间相关的问题,强烈建议你也用起来。
另外,场景里物体一多,AI 的"视野"也会受限。和真人建模一样,给 AI 一个干净、有序的场景,它的操作准确率会明显高于在一个塞满历史废弃物体的文件里工作。所以每次开始新任务前,我习惯先 Ctrl+N 新建一个空场景,或者把当前状态用 blend 文件另存一份,再进入对话流程。
6.4 MCP 权限边界:它真的会"乱来",设置好护栏
最后必须认真提醒:MCP 服务端一旦连上,就拥有操作 Blender 场景的完整权限,创建、删除、修改样样都行。如果模型被恶意指令引导,它真能把你的场景折腾得一团糟;某些实现如果封装了执行任意 Python 命令的工具,风险还会更大。
我的安全习惯现在固定是这几条:
- 建模测试永远用独立的 Blend 文件或空场景,绝不拿正在渲染的正式工程试水;
- 用完就停掉 MCP Server,不让它常驻后台;
- MCP 相关文件单独放一个目录,别和公司源码、重要资产混在一起;
- 不把本地端口暴露到局域网或公网,别人给你的服务端地址,一句话也不要信。
这些不是危言耸听,是我真实翻车之后总结出来的。有一次我让 AI 批量生成一百个物体,参数里混进了一个错误的修正器字段,结果每个物体都带了一个巨大到离谱的修改器,场景卡得鼠标都拖不动,最后只能强制关闭 Blender。从那以后,我每次发指令前都会先评估一件事:这条指令如果执行错,后果有多大?不可控的操作,宁可不做。
到现在,我的工作流里已经固定加入了 Qoder + Blender MCP 这个组合。凡是重复性、参数化的建模任务,我都优先交给对话去完成;精细雕刻和创意造型,还是保留手动操作。这套方案目前最大的价值不在于"解放双手",而在于它把"想法到模型"的距离压缩到一句话的长度——你不需要精通 Blender 快捷键,不需要会写 Python 脚本,只要能把需求说清楚,AI 就能帮你落地到场景里。
最后再分享一个小技巧:如果你跟我一样经常临时改需求,每个新任务开始前,先用一句话把当前场景状态同步给 AI,比如"场景中现有物体:demo_cube、材质 mat_red、灯光默认"。这个动作成本几乎为零,但能明显减少 AI"埋头乱改"的概率。自然语言建模这条路还在快速演进,工具和协议都在迭代,但方向我越来越确定:让创作回归表达本身,而不是被软件操作细节绑架。