
开源开发者 Simon Willison 在 2026 年 9 月 5 日公布了一组实验记录:他在 macOS 上的 ChatGPT Codex 模式中输入一句提示词,让 GPT-6 Astra 自行调用系统里安装的 Blender 5.1.2,仅耗时 2 分 39 秒就完成了从几何体生成、材质赋予到 Cycles 渲染输出的全过程 [4, 5]。表面上看这只是大语言模型又写了一段 Python 脚本,本质上这是 AI 编程智能体(Coding Agent)从单纯的“代码补全”跨越到“直接操控本地大型 GUI 软件底层引擎”的操作范式转变。
以往让 AI 生成 3D 资产,通常依赖端到端的 3D 生成大模型,这类模型导出的网格往往拓扑混乱、材质难以单独拆解调节。而借助编程智能体操控本地 Blender,输出的不仅是一张渲染图,还有结构清晰、分层完整的原生 .blend 工程文件 [4, 5]。创作者无需学习复杂的 bpy(Blender 的 Python 脚本接口)语法,就能用自然语言驱动工业级 3D 工具链。
核心交互提示词与全流程复现
要让 AI 智能体调动本地 Blender,不需要预先配置复杂的插件系统,核心在于向智能体明确本地可执行文件的具体路径与执行模式。
对于 macOS 用户,直接使用以下最简提示词即可启动任务:
Use the already installed /Applications/Blender to render a scene of a pelican riding a bicycle
如果希望避免智能体花费额外的时间探索系统环境,可以给出更精确的无界面执行指令模板:
Use Blender like this: /Applications/Blender.app/Contents/MacOS/Blender --background --python scene.py
对于 Windows 用户,只需将路径替换为默认安装位置,例如 C:\Program Files\Blender Foundation\Blender 5.1\blender.exe --background --python scene.py。
在初版渲染图生成后,可以通过多轮会话持续推进场景的丰富度与光影质感。Simon Willison 在测试中仅用了两轮简短指令:
OK add a background and a lot of flair
耗时 3 分 51 秒,智能体自动为原本处于纯色摄影棚背景下的鹈鹕加入了木质栈道、远景沙滩与节日彩旗。随后输入进一步优化指令:
OK make it a whole lot better
耗时 5 分 59 秒,智能体对场景构图进行了重构,修正了物体的透视比例,引入了落日余晖的暖色主光与冷色天光反衬,输出了最终的高清成品图与完整的工程文件 [1, 4]。
完成一轮创作后,还可以让智能体将本次探索的经验固化为本地技能包(Skill),方便后续所有项目直接继承:
Create a quick skill that describes how to use the currently installed /Applications/Blender based on what you learned
智能体会自动在本地生成并维护一个名为 blender-local/SKILL.md 的规范文件,记录已验证的执行路径、渲染参数与避坑策略 [2, 4]。之后只需输入 Use your Blender Local skill to build this scene,模型便会严格依照规范流水线作业。
智能体底层的真实作业工作流
当接收到上述提示词后,GPT-6 Astra 这类代码智能体并不会尝试去点击图形界面,而是遵循一套严谨的无头(Headless)自动化流程 [4]。
首先,智能体会在独立的工作目录(如 work/)中编写用于构建场景的 Python 脚本。执行该脚本时,必须调用 Blender 自身内置的 Python 环境运行 bpy 库,而不是调用操作系统的全局 Python。命令行统一采用后台无界面模式:
/Applications/Blender.app/Contents/MacOS/Blender --background --python work/scene.py
如果任务中需要其他通用的数据处理辅助脚本,智能体则会通过 uv run 调度常规 Python 环境执行,实现职责分离。
其次,智能体在脚本中会硬编码输出目录的绝对路径,确保在执行最终渲染之前,先执行 bpy.ops.wm.save_as_mainfile() 保存可供人工二次编辑的 .blend 文件,然后再触发 bpy.ops.render.render(write_still=True) 输出 PNG 图像 [2]。这样即便渲染中断,工程模型依然能够完整保留。
在渲染参数配置上,经过实测固化的标准模板如下:
- 渲染引擎:CYCLES
- 采样率配置:快速预览阶段设为 32 到 48 samples;最终交付阶段设为 64 到 96 samples 并强制开启内置降噪(Denoising)
- 色彩管理:视图变换(View Transform)选用 AgX,避免高光区域色彩断层
- 分辨率基准:1600x1200(100% 缩放比例)
在多轮迭代修改场景时,高水平的智能体会优先使用 bpy.ops.wm.open_mainfile() 载入上一轮保存的 .blend 文件,精准定位并修改特定几何节点,而不是在脚本开头粗暴地清空所有场景对象重新生成 [2]。
真实测试中的避坑清单与故障排查
在实际运行中,智能体驱动三维软件并非一帆风顺,以下是根据实际复现记录整理的关键问题与应对策略。
| 阶段 | 核心问题 | 留下的硬伤 |
|---|---|---|
| 环境初始化 | 首次在受限沙箱启动 Blender 崩溃,报错 exit code 139 [4] | 进程意外终止,无有效图像生成,需切换至非沙箱宿主执行通道 |
| 几何建模与布景 | 新旧几何体共面重叠,保留的旧地面与新增沙滩处于同一 Z 轴高度 [2] | 渲染图表面出现大面积黑色高频闪烁条带(Z-fighting) |
| 视觉交付评估 | 智能体仅以“命令返回 0”判断任务成功,缺乏图像视觉回读检验 [2] | 肢体悬空脱离脚踏板、远景天空未进入正交相机视锥、边缘几何体面数不足产生生硬棱角 |
除了上述表格列出的核心问题,还有数项容易被忽视的细节规范:
第一,后台渲染的静默等待机制。Cycles 引擎在编译着色器与光线追踪计算时,命令行可能会出现长达数十秒的无输出状态。智能体必须通过会话 ID 轮询进程状态直至正常结束,切忌因无即时输出而误判超时并重复拉起渲染进程。
第二,平滑着色无法替代几何细分。bpy 中的平滑着色(Smooth Shading)只能改变表面法线过渡,无法改变模型外轮廓的硬边。对于处于视觉焦点的核心角色,必须在生成阶段赋予足够的细分段数,并封闭曲线末端。
第三,视觉 QA 审查流程。每次完成实质性修改并保存 PNG 后,智能体必须重新读取该图像进行多模态视觉质检,重点核查三脚架平衡、部件连接点接触、阴影投影逻辑以及背景是否被相机画幅裁切。
第四,API 版本的向下兼容性。在 Blender 5.1.2 中,Material.use_nodes 与 World.use_nodes 虽能运行但已收到废弃警告,在未来的 Blender 6 系列中接口将发生变更,升级环境时需要让智能体重新验证脚本兼容性 [2]。
综合判断与落地边界
用 AI 编程智能体操控 Blender,不是让大模型去凭空幻觉一个三维空间,而是把大模型当作“精通三维数学与 Python API 的初级技术美术(TA)”,指挥工业级渲染核心完成精确构建。
从成本角度来看,以 OpenAI 的 GPT-6 Astra 模型为例,在 Codex 订阅额度内即可完成日常探索;若完全走 API 计费,完成包含三次完整重构迭代的 Pelican 案例总计消耗约 4.24 美元 [3, 4]。相比于人工从零拉点建面、调材质、布光所耗费的数小时,这一成本在原型验证阶段具备极高的经济价值。此外,由于智能体掌控了完整代码,只需编写几行循环控制相机运镜,就能调用 ffmpeg 将渲染图序列合成为平滑的 3D 运镜动画。
然而,当前工作流依然存在一个尚未解决的核心问题:纯代码驱动复杂曲面拓扑的表达上限。当面对高精度的生物有机形变(如复杂人脸表情、毛发动力学解算)时,参数化代码生成的几何体无论在自然度还是布线合理性上,依然无法匹敌资深 3D 艺术家的手工雕刻。目前这一工作流的最佳定位,仍是快速生成风格化低多边形资产、程序化场景搭建、产品渲染打样以及为手工设计提供高度可编辑的基础工程半成品。
引用来源
- Simon Willison. Astra Pelicans (September 4, 2026). https://simonwillison.net/2026/Sep/4/astra-pelicans/
- Simon Willison. blender-local SKILL.md (September 5, 2026). https://github.com/simonw/gpt-6-astra-blender-pelican-bicycle/blob/main/outputs/blender-local/SKILL.md
- Simon Willison. Full Codex Transcript: Pelican on Bicycle in Blender (September 5, 2026). https://github.com/simonw/gpt-6-astra-blender-pelican-bicycle/blob/main/codex-transcript.md
- Simon Willison. Using Blender with coding agents on macOS (September 5, 2026). https://til.simonwillison.net/llms/blender-coding-agents-macos
- Simon Willison. Using Blender with coding agents on macOS - Blog Post (September 5, 2026). https://simonwillison.net/2026/Sep/5/blender-coding-agents-macos/