【免费下载链接】blender-skills
Professional Blender 5.2 workflows as Agent Skills for Claude Code, Codex, Gemini CLI, Copilot and Cursor: modeling, UVs, PBR, baking, rigging, animation, export and QA.
本文带你深度解析 blender-skills 中的几何节点构建器(Geometry Nodes builder)。blender-skills 是一个把专业 Blender 5.2 工作流打包为 AI Agent Skills 的开源项目,覆盖建模、UV、PBR、烘焙、绑定、动画、导出与 QA。它最大的亮点之一,就是让你用一份 JSON 文件描述完整的节点树,几行配置即可生成散点、管道等程序化资产。
什么是 blender-skills:22 个技能覆盖完整 3D 管线 📦
blender-skills 面向 Claude Code、Codex、Gemini CLI、Copilot 和 Cursor 等 AI 编程代理,提供 22 个技能,覆盖建模、UV、PBR 材质、烘焙、Rigify 绑定、动画、游戏优化、多引擎导出、渲染、天气特效、模拟与资产 QA。所有脚本都在真实 Blender 5.2 LTS 环境中测试通过,详见 README.md。
其中 blender-geometry-nodes 技能是本文的主角——一个「JSON 转节点树」的构建器 gn_builder.py,帮你把程序化建模从「拖节点」变成「写配置」。
blender-skills 生成的硬表面程序化资产示例
为什么用「JSON 文件」比拖节点更友好?
传统几何节点需要在编辑器里手工拖拽几十个节点、连线、对插口,而且插口名称在不同版本间会变化——老教程里的写法在新版本里可能直接报错。
gn_builder 的思路是:用一个紧凑的 JSON spec 描述节点树,比直接写原始 bpy 代码便宜得多,也更适合 AI 代理批量生成。它还内置--describe命令,先查询节点在当前版本中的确切插口名再动手,天然规避版本差异坑。
三步快速上手:用一份 JSON 文件描述节点树 ⚡
第 1 步:查询插口名称
blender -b -P skills/blender-geometry-nodes/scripts/gn_builder.py -- --describe GeometryNodeDistributePointsOnFaces第 2 步:编写 JSON spec
以「在表面随机散布立方体」为例(取自官方配方 references/recipes.md):
{ "name": "GN_Scatter", "inputs": [["Geometry","GEOMETRY"], ["Density","FLOAT",10,{"min":0}], ["Seed","INT",0]], "outputs": [["Geometry","GEOMETRY"]], "nodes": { "dist": ["GeometryNodeDistributePointsOnFaces", {"distribute_method":"RANDOM"}], "inst": ["GeometryNodeInstanceOnPoints"], "join": ["GeometryNodeJoinGeometry"] }, "links": [["in.Geometry","dist.Mesh"], ["in.Density","dist.Density"], ["in.Seed","dist.Seed"], ["dist.Points","inst.Points"], ["inst.Instances","join.Geometry"], ["in.Geometry","join.Geometry"], ["join.Geometry","out.Geometry"]] }第 3 步:作为修改器应用并调参
blender -b scene.blend -P skills/blender-geometry-nodes/scripts/gn_builder.py -- --spec scatter.json --apply Ground --set Density=20 Seed=3构建完成后,JSON 里inputs声明的每个参数都会变成修改器输入,在 Blender 修改器面板上直接可视化调节。--set Name=@attr还支持从命名属性读取输入值,把贴图遮罩、顶点色等数据喂进程序化流程。
spec 关键字段一表看懂:JSON 格式速览
| 字段 | 作用 | 示例 |
|---|---|---|
name | 节点组名称 | "GN_Scatter" |
inputs/outputs | 组接口(即修改器参数) | ["Density","FLOAT",10,{"min":0}] |
nodes | 节点:[类型, 属性, 输入默认值] | "dist": ["GeometryNodeDistributePointsOnFaces", ...] |
links | 连线,格式为"节点.插口" | ["in.Geometry","dist.Mesh"] |
pairs | 区域(zone)配对:Repeat / Simulation / For Each | [["rin","rout"]] |
完整的 spec 说明见 gn_builder.py 的文档字符串。
💡 注意:Blender 5.2 中 Random Value 等节点的插口已改为动态插口(类型跟随
data_type变化),老教程基于索引的写法已失效——所以养成先用--describe查插口的习惯非常重要。
进阶能力:Zones、Repeat 与更多「大招」🔁
构建器不只是连接基础节点,SKILL.md 中还列出一整套高级节点类型的用法:
- Repeat 区域:迭代 N 次,适合 L-system 植物、松弛算法、递归细分,配方见 recipes.md
- Simulation 区域:逐帧状态,可做生长、粒子、侵蚀,烘焙后导出
- For Each 区域:对每个元素(每块建筑用地、每个岛)跑子图
- Closures / Bundles(5.0+):在节点间传递「函数」,复用策略节点组
- Lists(5.2):真正的数组而非场,支持排序、过滤、取项
- Grids / SDF:平滑布尔、重拓扑、圆角、体素特效
内置验证机制:结果可见、报错可见 ✅
构建器不是「写完就算完」,它自带三层验证:
- 节点警告:应用修改器后自动收集
node_warnings,构建结果中直接列出; - 求值统计:报告修改器求值后的顶点数/面数,一眼看出资产规模是否符合预期;
- 无头自动化测试:仓库中的 test_geonodes.py 会用真实 Blender 后台模式反复验证 spec 构建、参数修改(如把
Density从 5 改到 50 后顶点数必须增加)和配方可用性,属于项目 50 个无头测试的一部分。
一次成型:有技能 vs 无技能的效果对比 🎨
项目在官方对比页中记录了同一模型、同一提示词、一次成型的结果差异。下面这面 PBR 混凝土墙就是典型案例——左为无技能,右为启用 blender-skills 的结果:
无技能版本细节偏「脏」,孔洞和斑驳分布不够自然:
而启用技能后,几何节点、PBR 参数与 QA 检查协同工作,细节明显更专业:
如何安装 blender-skills 并快速开始
安装只需要两条命令(要求 Blender 5.2+):
git clone https://gitcode.com/gh_mirrors/ble/blender-skills ./blender-skills/install/install.sh安装脚本 install.sh 默认同时写入~/.claude/skills与~/.agents/skills(后者被 Codex、Gemini CLI、Copilot、Cursor 读取),也支持--agent、--project等参数按项目安装。装好后,对 AI 代理说「用几何节点做一个草地散布」即可,它会路由到 geometry-nodes 技能并调用构建器完成工作。
写在最后
blender-skills 的几何节点构建器把「拖节点」变成了「写配置」:--describe查插口、JSON 描述节点树、--apply --set应用调参,再配合内置的警告收集与无头测试,让程序化资产生成变得确定、可复现、可批量。无论你是想让 AI 代理替你搭节点,还是想把程序化工作流沉淀成版本化配置,这套「JSON 即资产」的思路都值得试试。
【免费下载链接】blender-skills
Professional Blender 5.2 workflows as Agent Skills for Claude Code, Codex, Gemini CLI, Copilot and Cursor: modeling, UVs, PBR, baking, rigging, animation, export and QA.
相关推荐
blender-skills 程序化建模指南:geometry-nodes 散布系统与建筑生成器节点图详解
blender skills 程序化建模指南:geometry nodes 散布系统与建筑生成器节点图详解 blender skills 是面向 Cursor、
Blender几何节点高级应用:程序化城市生成算法详解
Blender几何节点高级应用:程序化城市生成算法详解 在建筑可视化、游戏开发和影视特效领域,手动创建大规模城市模型往往耗时且难以修改。Blender的几何节点
图形学3D渲染桌面应用音视频终极指南:LiteGraph.js JSON文件格式深度解析与实战应用
终极指南:LiteGraph.js JSON文件格式深度解析与实战应用 LiteGraph.js 是一款强大的基于JavaScript的节点图引擎和编辑器,类似
前端低代码流程编排图形学3D渲染
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考