年初用 Blender 一点点搭一座中式宫殿模型光是把几十根柱子和斗拱对齐就能耗掉一整天。更多人想过做“自动建模”但自动化的想象力往往停在“写一个 Python 脚本生成模型”这一步这确实能降低一部分重复劳动却仍然要求你先把几何规则、坐标体系和构建顺序想清楚。这半年 AI 编码助手的变化把这件事往前推了一大步以 Codex CLI 为代表的编程智能体已经不满足于“在聊天框里生成代码”而是能直接读取项目、执行命令、根据报错修改代码并在验证通过后继续下一个任务。当这种能力接上 DeepSeek 这类国产大模型的推理能力再加上一个可复用的 Skill 机制你会发现“让 AI 自动控制 Blender 建模”不再是一句口号。这篇文章不准备只讲概念。我会用“天宫仙境”这种带中式古建筑风格的场景作为目标完整演示如何用 DeepSeek 接入 Codex CLI如何为 Blender 建模定义一个专用 Skill如何让 Codex 自己去写 bpy 脚本、在 Blender 里执行、根据结果迭代直到生成一个可渲染、可继续编辑的 3D 场景。读完你不仅能跑通这条链路还能把它迁移到游戏场景原型、建筑可视化、工程示意模型等真实项目里。1. 这篇文章真正要解决的问题先聊一个反常识的现象很多人以为“AI 控制 Blender”是让大模型直接生成 3D 模型文件比如输入“做一个宫殿”就得到一份 .blend 文件。现实远没那么理想。大模型目前在几何生成上的能力距离直接产出可用生产级模型还有较大差距但它的强项是理解指令、组织代码、处理文本和报错。所以正确的思路不是让 AI 凭空捏造模型而是让 AI 写出 Blender 能执行的 Python 脚本用程序化建模的方式把场景搭出来。这篇文章真正要解决的核心问题是如何让 AI 编程智能体稳定地、可复用地对 Blender 进行程序化建模。这句话拆开看有三个关键点稳定“稳定”指的是 AI 不是一次性生成一段脚本碰运气而是能在一个闭环里“生成脚本 → 执行 → 读报错 → 改脚本 → 再执行”直到任务完成。可复用AI 不能每次建模都从零摸索应该通过 Skill 机制把 Blender 建模的经验、约束、命令写法沉淀下来下次直接复用。程序化建模我们通过 bpyBlender 的 Python API控制场景中的物体、材质、灯光和相机用代码描述建筑逻辑而不是用鼠标手动拖拽。这个方案解决的是开发者面对复杂场景时的真实痛点。Blender 手动建模适合精雕细琢但当你需要快速搭建一个宏观场景、批量创建重复结构、或者做参数化原型时手动操作是瓶颈。过去要解决这个瓶颈你需要自己写大量 bpy 脚本还要反复调试坐标和尺寸。现在Codex DeepSeek 的组合可以把“从自然语言需求到可运行脚本”的时间压缩到一个对话级别。什么人最适合读这篇文章我建议是这三类读者重点关注用过 Blender 或学过 3D 建模但觉得手动建模效率低想尝试程序化建模的开发者。对 Codex CLI、Agent Skill 这类 AI 工程化玩法感兴趣想找一个不只是“写 CRUD”的真实落地案例的开发者。做游戏场景原型、建筑可视化、数字孪生或工程展示需要快速生成大体量结构模型的从业者。如果你是完全没有 Python 基础的 Blender 美术这篇文章会有一点门槛但并不会劝退因为写代码的是 AI你的核心任务变成了“把需求描述清楚”和“判断 AI 写得对不对”。2. 核心概念速览Codex、Skill 与 Blender 程序化建模在动手之前先把四个关键词掰开揉碎讲清楚否则后面实操时你会被各种术语绕晕。2.1 Codex CLI 是什么Codex CLI 是 OpenAI 开源的终端编程智能体。它能读取你的代码仓库理解项目结构直接执行 shell 命令运行测试并根据反馈修改文件。你可以把它理解成一个住在终端里的“结对程序员”它不只会给建议还会真正动手。Codex CLI 的模型接口设计成了可配置的。这意味着它不一定只能连 OpenAI 的官方模型也可以通过 OpenAI 兼容的 API 协议去接其他模型服务。DeepSeek 就是一个典型选择它提供 OpenAI 兼容的 API国内开发者访问更顺畅同时推理能力和中文理解力都足够强。2.2 DeepSeek 在这里扮演什么角色DeepSeek 在这套链路里的角色是“大脑”。Codex CLI 负责执行动作DeepSeek 负责理解你的需求、规划建模步骤、生成 bpy 代码、分析报错。你可以把它理解成DeepSeek 是那个懂 Blender 但不会亲手建模的工程师Codex 是那双能操作终端的手。这种搭配有一个实际价值DeepSeek 的 API 成本通常比海外大模型更友好中文提示词理解也更好尤其当你需要描述“中式古建筑飞檐要向上翘”“廊柱需要对称排列”这类带文化语境的建模需求时中文大模型的优势非常明显。2.3 Skill 机制解决什么问题Skill技能是编程智能体里最被低估的机制。它本质上是一组“提前写好的知识包”告诉 AI 在特定场景下应该遵循什么规则、调用什么命令、避免什么错误。如果没有 Skill你每次让 Codex 操作 Blender它都可能犯同样的错误忘记 Blender 的 Python 要使用 blender 内置解释器而不是系统 Python、不知道要加--background参数、不理解 Blender 世界坐标系的原点和单位设置。这些经验是分散的每次都要重新教。有了 Skill我们可以把这些经验固化下来。当 Codex 检测到当前任务属于 Blender 建模场景时会自动加载对应 Skill按里面的规范执行。这就是“可复用”的真正含义。2.4 为什么 Blender 适合被 AI 控制Blender 是一个开源 3D 创作套件它的核心优势不只是免费更在于它内置了一个完整的 Python API也就是 bpy。通过 bpy你可以在 Python 脚本里完成几乎一切 GUI 操作创建物体、修改网格、设置材质、添加灯光相机、渲染输出。更关键的是Blender 提供了命令行模式blender --background --python script.py--background让 Blender 不启动图形界面纯后台执行 Python 脚本。这对 AI 智能体来说是最理想的环境没有鼠标操作没有菜单点击一切都是命令行和脚本文件AI 可以完全掌控。把 Codex、DeepSeek、Skill、bpy 四者连起来就形成了一条完整的自动化流水线模块角色技术载体DeepSeek推理与代码生成DeepSeek APIOpenAI 兼容接口Codex CLI智能体执行框架终端命令、文件读写、脚本执行Skill领域经验封装SKILL.md 指令文件Blender建模执行环境bpy Python API 命令行模式这里有一个常见的误解需要澄清很多人以为 Skill 是给 Blender 装插件其实不是。Skill 是给 AI 智能体看的不是给 Blender 看的。它改变的是 Codex 的“作业规范”而不是 Blender 的功能。3. 环境准备与前置条件开始实操之前先把环境搭好。这一节非常关键因为很多 AI 控制 Blender 的教程失败不是思路问题而是环境变量和路径配置不对。3.1 你需要准备什么组件作用说明操作系统运行 Codex 与 BlenderWindows / macOS / Linux 均可示例以 macOS 和 Windows 常见路径为例Node.js安装 Codex CLI 的依赖版本建议使用 LTS 版本具体以 Codex 官方要求为准Codex CLIAI 智能体执行框架通过 npm 安装DeepSeek API Key调用 DeepSeek 模型在 DeepSeek 开放平台申请Blender建模执行环境从 Blender 官网下载稳定版3.x 以上即可基础 Python 知识理解和修改脚本不需要深入能看懂基本语法即可3.2 安装 Codex CLICodex CLI 的安装方式在不同版本中略有差异但主流方式是通过 npm 全局安装。在终端执行npm install -g openai/codex安装完成后验证版本codex --version如果命令找不到常见原因是 npm 全局安装路径不在系统的 PATH 环境变量中。这时你需要找到 npm 的全局 bin 目录并把它加入 PATH。在 macOS/Linux 上通常是/usr/local/bin或$(npm prefix -g)/bin在 Windows 上通常是%APPDATA%\npm。3.3 配置 DeepSeek 作为 Codex 的模型提供方Codex CLI 支持自定义模型提供方。它的配置文件通常位于~/.codex/config.toml。我们需要在里面添加 DeepSeek 的接入信息。一个参考配置如下# 文件路径~/.codex/config.toml model_providers { deepseek { name DeepSeek, base_url https://api.deepseek.com/v1, env_key DEEPSEEK_API_KEY, wire_api chat } } model deepseek/deepseek-chat这里需要特别说明不同版本的 Codex CLI 对配置字段的支持可能有差异。所以上面的配置请看作一个“标准思路模板”而不是所有版本通用的最终答案。当你配置后发现无法连接第一步应该是查看 Codex 官方文档中关于自定义 model provider 的字段定义然后对照修改。配置完成后在终端导出 API Keyexport DEEPSEEK_API_KEYsk-你的密钥建议把这一行写入 shell 的配置文件如~/.zshrc或~/.bashrc避免每次启动终端都要手动输入。3.4 安装 Blender 并验证命令行模式从 Blender 官网下载稳定版并安装。安装完成后你的系统里会多出一个可执行文件。macOS 上通常在应用程序目录内路径类似/Applications/Blender.app/Contents/MacOS/BlenderWindows 上通常是C:\Program Files\Blender Foundation\Blender 4.x\blender.exe为了使用方便建议把 Blender 的可执行文件路径加入系统 PATH然后验证blender --version如果环境变量配置成功会输出版本信息。这一步很重要因为后面 Codex 执行建模脚本时需要通过命令行调用 Blender。还需要验证 Blender 能执行 Python 脚本。创建一个最简单的测试脚本test_bpy.py# 文件路径test_bpy.py import bpy print(BPY OK) print(Version:, bpy.app.version_string)然后执行blender --background --python test_bpy.py看到输出BPY OK以及 Blender 版本号就说明 Blender 命令行环境已经就绪。如果这一步报“ModuleNotFoundError: No module named bpy”说明你可能用了系统的 Python 去执行脚本而不是 Blender 自带的 Python 解释器。必须用blender --background --python这种形式而不是python test_bpy.py。4. 定义一个可复用的 Blender 建模 Skill现在开始进入核心。我们要给 Codex 定义一个专属 Skill目的只有一个当 Codex 拿到“用 Blender 建模”的任务时它能自动遵守一套我们验证过的规范而不是自由发挥。4.1 Skill 的目录结构Skill 本质上是一个包含指令文件的目录。推荐放在用户目录下的 Codex 配置目录中结构如下~/.codex/skills/blender-builder/ ├── SKILL.md └── scripts/ └── clean_scene.py其中SKILL.md技能说明告诉 Codex 在建模场景下应该怎么做。scripts/存放一些基础脚本Codex 在执行任务时可以直接复用。4.2 编写 SKILL.mdSKILL.md的内容不需要长篇大论但必须把关键规则写清楚。下面是一个参考写法--- name: blender-builder description: 使用 Blender 的 Python API 进行程序化建模。当用户要求创建 3D 场景、建筑模型、批量物体或需要使用 Blender 时启用本技能。 --- # Blender Builder Skill 本技能用于指导 AI 通过 Blender 的 Python API 进行程序化建模。 ## 执行规则 1. 所有 Blender 脚本必须使用 blender --background --python 脚本路径 执行。 2. 不要使用系统 Python 直接执行包含 import bpy 的脚本。 3. 创建新场景前先清空默认场景避免叠加干扰。 4. 建模过程中所有操作必须通过 bpy API 完成不要建议用户手动操作 GUI。 5. 每次生成脚本后必须实际运行验证根据报错信息修改脚本而不是仅提供代码。 6. 模型命名必须有语义例如 Platform、Pillar_Left_01方便后续编辑。 7. 场景搭建完成后应使用 bpy.ops.wm.save_as_mainfile() 保存为 .blend 文件。 ## 常用命令 - 清空场景bpy.ops.object.select_all(actionSELECT) bpy.ops.object.delete(use_globalFalse) - 添加立方体bpy.ops.mesh.primitive_cube_add(size1, location(x, y, z)) - 添加圆柱体bpy.ops.mesh.primitive_cylinder_add(radius1, depth1, location(x, y, z)) - 设置材质创建 bpy.data.materials.new() 并赋给物体的 data.materials ## 执行流程 当用户描述一个场景时按以下流程工作 1. 将用户描述拆解为物体清单和空间关系。 2. 用 Python 写出建模脚本。 3. 在终端执行 Blender 后台命令。 4. 检查输出如有报错则修改脚本并重新执行。 5. 成功后保存 .blend 文件并简要汇报生成了哪些物体。这个SKILL.md的写法本质上是在给 Codex 注入“经验”。以后你再让它建模它就不会犯反复不执行命令、只给代码不验证的低级错误。4.3 在项目工作区放置 AGENTS.md除了全局 Skill还可以在具体项目目录中放置AGENTS.md让 Codex 进入工作目录时自动读取项目约束。比如天宫项目的约束是# 项目天宫仙境 本项目使用 Blender 程序化建模场景风格为中式古建筑。 ## 工作区规范 - 所有 Python 脚本放在 scripts/ 目录下。 - 输出 .blend 文件统一放在 output/ 目录。 - 场景中必须包含主体大殿、两侧偏殿、平台基座、装饰柱、云雾粒子。 - 模型尽量复用函数不要为每个物体手写重复代码。有了AGENTS.mdCodex 就能理解这是一个具体项目的上下文生成的代码会更贴合场景要求。这个文件相当于项目的长期记忆。5. 核心流程拆解从自然语言到 .blend 文件在让 Codex 正式动工之前我们先拆解这套自动化流程的逻辑。你需要理解它的运转方式否则当 AI 表现不符合预期时你无处下手调试。5.1 第一步需求解析当你在 Codex 终端里输入“帮我搭建一座天宫仙境的场景要有主殿、偏殿、基座和云雾”时DeepSeek 模型要先把这段自然语言翻译成建模任务清单。这个环节最容易出问题的地方是用户描述过于抽象AI 不知道从哪里下手。所以你可以在需求里加一些具体约束比如“主殿位于中心偏向一侧对称”“整体尺寸控制在 50 米见方”“使用暖黄色材质表现古建筑”等。AI 对具体数字和空间关系的理解远比空泛形容词准确。5.2 第二步函数化建模脚本为了让场景可维护建模脚本应该写成“函数化”的。不要一个文件里平铺几百行创建物体的代码而是把常见构件封装成函数比如create_pillar()、create_roof()、create_platform()。这样做有两个好处Codex 后续迭代时只需要修改函数内部逻辑不会影响其他构件。如果你想调整规模比如从“三间大殿”改成“五间大殿”只需要改循环次数和位置计算不需要重写整个场景。5.3 第三步命令行执行Codex 会在终端调用 Blender 执行脚本。这一步真正的价值在于Codex 能看到执行结果。如果脚本报错错误信息会直接返回给它它就可以自动进入修复循环。所以你的工作环境里Codex 必须有权执行终端命令。如果你使用了限制过严的沙箱禁止了终端执行那这套方案就废了。5.4 第四步迭代与验证执行完成后Codex 会检查 Blender 是否成功保存了 .blend 文件。如果没有说明脚本可能执行到一半就失败了它会读取报错继续修改。这个过程相当于传统的“编译、运行、修 bug”只不过现在由 AI 自动驱动。如果需要进一步验证场景效果可以让 Codex 在脚本中加一段渲染命令渲染一张测试图然后通过查看图片判断场景是否符合要求。这一步在后续示例中会涉及。6. 完整示例用 Codex DeepSeek 搭建“天宫仙境”现在进入代码实战。我会先给出一个最小可运行的场景脚本展示程序化建模的基本写法然后演示如何把它交给 Codex 扩展成一个完整场景。6.1 最小场景脚本基座、主殿、屋顶创建一个 Python 文件scripts/tiangong_base.py# 文件路径scripts/tiangong_base.py import bpy import math def clear_scene(): 清空当前场景中的默认物体 bpy.ops.object.select_all(actionSELECT) bpy.ops.object.delete(use_globalFalse) def add_cube(name, size, location, scale(1, 1, 1)): bpy.ops.mesh.primitive_cube_add(sizesize, locationlocation) obj bpy.context.object obj.name name obj.scale scale return obj def add_cylinder(name, radius, depth, location): bpy.ops.mesh.primitive_cylinder_add(radiusradius, depthdepth, locationlocation) obj bpy.context.object obj.name name return obj def add_cone(name, radius, depth, location): bpy.ops.mesh.primitive_cone_add(radius1radius, depthdepth, locationlocation) obj bpy.context.object obj.name name return obj def build_base_scene(): clear_scene() # 1. 基座平台 add_cube(Platform, 1, (0, 0, 0), scale(30, 30, 0.5)) # 2. 主殿主体 add_cube(MainHall, 1, (0, 0, 2.75), scale(16, 10, 3)) # 3. 主殿屋顶 add_cone(MainRoof, 9, 2.5, (0, 0, 5.6)) # 4. 四根前廊柱 for i, x in enumerate([-6, -3, 3, 6]): add_cylinder(fPillarFront_{i:02d}, 0.6, 4, (x, -4, 2.4)) # 5. 保存场景 bpy.ops.wm.save_as_mainfile(filepathoutput/tiangong_base.blend) if __name__ __main__: build_base_scene() print(场景构建完成Platform / MainHall / MainRoof / PillarFront)这段脚本做的事情很简单清空场景创建基座创建主殿添加屋顶生成四根柱子然后保存。它的作用不是直接完成天宫而是给 Codex 一个“函数化建模”的样板。在终端运行mkdir -p output blender --background --python scripts/tiangong_base.py如果输出包含“场景构建完成”说明最小场景已经生成到了output/tiangong_base.blend。这时你可以用 Blender 打开文件查看也可以让 Codex 继续在这个基础上扩展。6.2 让 Codex 扩展成完整的天宫场景最小脚本跑通后剩下的工作就是让 Codex 去扩充。你可以这样在 Codex 终端里输入继续扩展 scripts/tiangong_base.py目标是打造“天宫仙境” 1. 在主殿两侧增加左右偏殿使用同样的基座和屋顶风格。 2. 增加通往主殿的台阶台阶宽度 6 米共 9 级。 3. 增加 8 根内部支柱支撑主殿屋顶。 4. 在场景外围添加一圈护栏间隔 3 米一根望柱。 5. 增加云雾效果使用 Blender 体积雾或粒子方式实现。 6. 添加一个主光源和一个补光让大殿明亮。 7. 最后渲染一张相机视角的测试图保存到 output/preview.png。Codex 在加载了blender-builder技能和项目AGENTS.md之后会按照规则把任务拆成多个函数写入脚本然后自动执行 Blender 命令。这里要提醒一点这段需求里我刻意写了很多“数字”比如宽度 6 米、9 级台阶、间隔 3 米。这些数字是给 AI 的空间约束。如果只写“增加台阶”“增加护栏”AI 很容易随意发挥生成的比例可能失衡。6.3 添加材质、灯光与相机Codex 在扩展场景时很可能还需要写材质、灯光和相机的代码。下面是一个可以参考的完整片段放在同一个脚本中def add_material(obj, color, roughness0.6): 给物体创建基础 PBR 材质 mat bpy.data.materials.new(namefMat_{obj.name}) mat.use_nodes True nodes mat.node_tree.nodes principled nodes.get(Principled BSDF) if principled: principled.inputs[Base Color].default_value (*color, 1.0) principled.inputs[Roughness].default_value roughness obj.data.materials.append(mat) def setup_lighting(): 设置主光源和补光 # 主光暖色调日光 bpy.ops.object.light_add(typeSUN, location(10, -10, 20)) sun bpy.context.object sun.name MainSun sun.data.energy 4.0 sun.rotation_euler (0.5, -0.3, 0.6) # 补光 bpy.ops.object.light_add(typeAREA, location(-8, -8, 8)) fill bpy.context.object fill.name FillLight fill.data.energy 300.0 def setup_camera(): 设置一个视野较好的相机视角 bpy.ops.object.camera_add(location(20, -20, 12)) cam bpy.context.object cam.name MainCamera # 让相机看向原点 direction (0 - cam.location.x, 0 - cam.location.y, 4 - cam.location.z) cam.rotation_euler (1.0, 0.0, 0.8) bpy.context.scene.camera cam这些函数也是给 Codex 的“脚手架”。一旦写进了脚本Codex 后续调用的成本就低很多。6.4 让 Codex 执行并自动修复当 Codex 拿到脚本后它会执行类似如下的命令blender --background --python scripts/tiangong_extended.py然后检查输出。如果输出中有Error或Traceback它会读取错误信息定位是哪一行出问题再修改脚本重新运行。这个循环会持续直到没有报错并成功保存.blend文件。这个环节里你需要做的是观察而不是频繁插手。除非 Codex 连续多次在同一类问题上失败你再介入补充 Skill 规则。6.5 渲染测试图Codex 完成场景搭建后如果脚本里没有写渲染指令你可以在终端手动执行blender --background output/tiangong_final.blend --engine CYCLES --render-output output/preview.png --render-frame 1这里有一个小坑上述命令生成的图片文件名通常是preview0001.png而不是preview.png因为 Blender 默认会补上帧号。如果你希望文件名完全一致可以使用blender --background output/tiangong_final.blend --engine CYCLES --render-output output/preview_ --render-frame 1 --render-format PNG执行完成后去output/目录查看渲染图。如果场景比例不对、材质不明显、或者相机视野太远把问题反馈给 Codex让它继续调参。7. 运行结果与效果验证验证分三个层级脚本运行成功、文件正确保存、渲染效果符合预期。很多人只看第一步觉得脚本没报错就完成了这是远远不够的。7.1 脚本运行验证成功的标志是终端输出类似场景构建完成Platform / MainHall / MainRoof / PillarFront 保存至 output/tiangong_base.blend如果这里出现Error: Cannot save file优先检查output/目录是否存在。Blender 在后台模式不会自动创建目录需要在脚本里先os.makedirs或提前在终端mkdir -p。7.2 场景内容验证打开生成的.blend文件或者用 Python 脚本统计场景中的物体数量和名称。可以在终端执行blender --background output/tiangong_final.blend --python-expr import bpy; print([obj.name for obj in bpy.context.scene.objects])输出应该是一长串语义明确的物体名称列表。如果出现一堆默认名称如Cube.001、Cylinder.002说明 Skill 中的“模型命名必须有语义”这条规则没有被严格执行需要把这条规则在SKILL.md里加重强调。7.3 渲染效果验证渲染图是最终判断标准。你在检查时重点看三件事空间比例大殿和偏殿的主次关系是否合理。材质观感暖黄色的古建筑材质是否明显。相机构图主殿是否处于视野中心是否被前景遮挡。如果发现构图问题你可以反馈给 Codex“相机视野太远主殿只占画面的 30%请调整相机位置和焦距让主殿成为视觉中心。”Codex 会去修改相机的location和rotation_euler。坦白说AI 一次生成的场景大概率不会完美。它更接近一个“可用的初稿”后续的调优对话才是真正出效果的地方。8. 常见问题与排查思路这套链路涉及 Codex、DeepSeek、Blender 三个组件任何一个环节出问题都会让任务失败。这一节把最常遇到的坑集中列出来。问题现象可能原因排查方式解决方案codex: command not foundCodex CLI 未安装或 npm 全局路径不在 PATH执行npm prefix -g把输出目录加入 PATH重新安装或手动配置 PATH找不到 Codex CLI 二进制文件其他工具尝试调用 codex但未指定路径确认codex在 PATH 中或使用绝对路径调用在调用方配置中设置 codex 的完整路径Codex 无法连接 DeepSeek APIAPI Key 未设置或模型提供方配置错误检查~/.codex/config.toml的 base_url 和 env_key设置DEEPSEEK_API_KEY环境变量核对官方文档DeepSeek 响应报网络错误本地代理将 API 请求转发到了非预期端口查看报错消息中的 endpoint 和代理日志在使用 DeepSeek 官方 API 时确认网络环境可正常访问不依赖额外代理ModuleNotFoundError: bpy用系统 Python 执行了脚本检查执行命令是否以python开头改为blender --background --python script.pyBlender 脚本执行后无输出脚本中没有 print 或只是静默执行在关键节点添加 print 输出按 Skill 规范在脚本中保留进度打印Cannot save file输出目录不存在检查路径的上一级目录是否存在在脚本开头创建目录或手动mkdir -p渲染结果为全黑没有相机或没有灯光检查bpy.context.scene.camera和场景中的灯光对象在脚本中添加相机和灯光Blender 渲染特别慢使用了 Cycles 渲染器且没有 GPU 配置可在命令行指定--cycles-device OPTIX/CUDA或先用 Eevee 预览测试阶段使用blender --background --engine BLENDER_EEVEE加快速度Codex 反复修改但一直报错Skill 中缺少针对性规则查看 Codex 的对话日志找出它反复混淆的点在SKILL.md中补充具体规则总结这次失败的原因其中关于 Codex 反复报错的问题值得多说两句。这种现象通常不是因为模型能力差而是因为技能定义不够细。如果 Codex 在某个环节反复失败比如它始终不知道 Blender 背景模式下的渲染命令就把正确的命令直接写进SKILL.md的“常用命令”里。技能文件就是 AI 的“避坑手册”你踩过的每一个坑都值得写进去。9. 最佳实践与工程建议最后这部分是把这套玩法从“demo 能跑”升级到“工程可用”的建议。9.1 把建模函数封装成可复用库不要让 Codex 每次从零开始写add_cube、add_cylinder这类基础函数。你应该维护一个blender_lib.py把常用构件封装成稳定函数Codex 的任务只是调用和组合。这样既减少出错概率也让 AI 生成的代码更聚焦在“场景设计”而不是“基础语法”。9.2 善用 Skill 持续积累经验每完成一个项目把遇到的问题沉淀到SKILL.md。比如这次发现 Blender 的primitive_cone_add参数在不同版本有差异就把正确的用法写进技能文件。Skill 文件不需要一次写完它是一个持续更新的经验库。9.3 验证脚本不要只跑一次建议在SKILL.md中要求 Codex 在生成脚本后至少执行两类验证第一类是运行验证确认没有语法和 API 错误第二类是输出验证用--python-expr列出场景物体或者渲染一张测试图。两层验证都通过才算完成任务。9.4 注意 API Key 和终端安全DeepSeek 的 API Key 不要写在config.toml里应该通过环境变量注入。不要把.env、config.toml提交到 Git 仓库。Codex 会执行终端命令所以要在可信的项目目录中运行它避免在不可信代码库中直接放行任意命令执行。如果 Codex 生成的脚本中有类似bpy.ops.object.delete这种有风险的操作先让它打印将删除的物体列表确认后再真正执行。9.5 从 2D 预览到最终渲染分阶段推进不要一上来就让 AI 直接渲染 4K 高清图。建议流程是先用 Eevee 渲染低分辨率预览图。确认构图和材质没问题。再切换到 Cycles提高采样和分辨率。最后再说灯光和氛围的精细化调优。这样能大幅缩短验证周期也能减少 Codex 长时间等待渲染时的无效循环。9.6 保留版本管理习惯output/目录下的.blend文件建议按时间或功能版本命名比如tiangong_v1.blend、tiangong_v2.blend。AI 在迭代过程中可能会把场景改坏有版本备份才能快速回滚。10. 总结与后续方向这篇文章的核心想表达一件事AI 控制 Blender 建模的关键不在于让大模型直接生成模型而在于构建一条“自然语言 → 代码生成 → 命令行执行 → 结果验证”的自动化闭环再用 Skill 把经验固化下来。你掌握这条链路之后它能做的事情远不止一个“天宫仙境”。游戏场景的地形批量生成、建筑群落的布局原型、工程构件的参数化建模、甚至教育课件中的 3D 示意图都可以用这套方法快速完成。值得继续深入的方向有三个一是把 Skill 做得更细。比如增加“中式古建筑构件库”技能里面封装飞檐、斗拱、须弥座的标准生成函数下次 Codex 直接调用。二是把渲染验证升级为自动评测。可以让 Codex 渲染多角度图片再写一个小脚本分析图片的平均亮度、主色调占比自动判断场景是否达到了预期的明亮度和风格。三是把流程集成到 CI 流水线。当.blend源文件更新时自动触发 Codex 重新生成预览图并提交材质说明和修改记录。这套方案当然有边界。它适合“程序化、结构化、可描述”的场景不适合追求手工雕刻手感的高精度单件模型。但对快速原型、批量布局、参数化设计来说DeepSeek Codex Blender Skill 是一条非常值得投入的自动化路径。建议你把这篇文章里的最小示例先跑通再试着把 Skill 文件扩展成自己的建模经验库。跑通一次“让 AI 自动搭出场景”的完整流程比你刷十篇工具介绍文章都更有价值。