
“那些跟你说 3D 很难的人,往往就是在卖你课的人。我把它做成免费的了。”
借助完全免费的 Blender,配合 Claude Opus 5.5 编写自动化代码,你现在几乎可以零成本做出可直接进游戏引擎(Game-Ready)的 3D 模型:
- 道具、建筑与载具(零成本):由 Opus 编写 Python 脚本,直接在 Blender 中程序化生成。
- 角色与生物(零成本或几毛钱):要么用自己的本地显卡免费生成,要么通过 Tripo API 生成(每个模型仅需 $0.20~$0.60)。
- 网格之后的全套工序(全部免费):网格清理、骨骼绑定(Rigging)、蒙皮权重(Weights)、动画片段(Clips)以及引擎导出,100% 在 Blender 里通过代码免费完成。
此外,这篇指南还会彻底解决两个最常见的新手痛点:
- 为什么根据 AI 设定图生成的低模(Low-Poly)道具,拼起来会变成“漂浮的散装方块”?
- 为什么 Tripo 生成的 3D 角色一做动作,衣服就会严重拉伸变形?

全流程路线速览(3 条输入路线,1 套统一管线输出)
- 路线 A(完全免费):在 Blender 里用 Python 生成道具、建筑与车辆(步骤 02 ~ 05)
- 路线 B/C(本地显卡免费,或 Tripo 不到 $1):用多视图生成器制作角色与生物(步骤 06 ~ 08)
- 统一后处理管线(每个模型均免费):在 Blender 内完成拆件、绑定、设权重、写动画与导出(步骤 09 ~ 15)

一次性环境配置(Setup Once)
- 安装工具:安装免费的 Blender 和 Claude Code。在一个专门的项目文件夹里打开终端运行 Claude Code,执行下文的每一条 Prompt——它会自动编写 Python 脚本、以无头模式(无窗口)后台运行 Blender,并自动打开渲染好的检查图。
- 配置
CLAUDE.md:告诉 Claude 你的 Blender 可执行文件路径(macOS 默认路径为/Applications/Blender.app/Contents/MacOS/Blender)。在项目根目录的CLAUDE.md中加入这行指令:
- 脚本化留档:把每一步都保存为独立的
.py脚本文件,这样后续任何参数改动都可以一键重跑。
核心术语速查(Words You'll See)
- Mesh(网格):由三角形面片组成的 3D 几何形状。常用保存格式为 GLB 和 FBX。
- Orthographic view(正交视图):没有任何近大远小透视变形的平面视图,就像工程蓝图。
- UV 与 Texture(贴图):包裹在 3D 网格表面的 2D 图片;Normal map(法线贴图) 则是用来伪造凹凸微小细节的特殊贴图。
- Decimate(减面):降低模型的三角形面数。
- Armature / Rig(骨骼/绑定):控制模型运动的骨架;Weights(权重) 决定了每根骨头对每个顶点的牵引比例。
- Rest pose(静止姿态):建立骨架时的默认初始姿态;A-pose 指双臂自然下垂约呈 45 度角的站姿。
- IK(反向动力学):固定手或脚的位置不动,让手臂或腿部自动计算弯曲角度去够到目标点(比如脚踩稳地面、手握住船桨)。
PART 1 · 选对生成路线
01. 按物体类型选择路线
黄金法则:凡是能用尺子量出来的规则物体,一律用代码写;凡是必须靠手工雕塑的有机形态,一律用 AI 生成器。
- 免费路线 1:Blender + Python 代码(单模型成本 $0)
- 适用对象:枪械、箱子、房屋、整片城市街区、车辆、家具。
- 优势:尺寸极其精确、面数极低、每个零件都能直接改数字调整。
- 局限:Claude Opus 不擅长看着图片复刻复杂的有机曲面——如果硬用纯代码搭一个人物角色,做出来会像个乐高玩具机器人。
- 免费路线 2:本地 GPU 跑 Hunyuan3D 2.0(单模型成本 $0,需显卡)
- 适用对象:角色与生物。几分钟内即可根据多视图参考图生成 3D 网格 + 贴图。
- 硬件要求:官方完整版(几何+贴图)需 16 GB 显存;社区便携版(WinPortable)可在 8 GB 显存笔记本显卡上运行,但面部细节会偏肉、手部容易与手持物粘连,且面数上限为 40,000 面。(注:混元 3D 许可证目前排除了欧盟、英国和韩国地区。)
- 低成本付费路线:Tripo API(单模型约 $0.20 ~ $0.60)
- 计费标准:
1 credit = $0.01。多视图生成裸几何体需 20~30 credits,加普通贴图需 10~30 credits;开启精细贴图总计约 60 credits($0.60)。任务失败或取消不扣费。 - 省钱诀窍:只花钱买“模型生成”! Tripo 平台上额外收费的重拓扑(10~40 credits)和自动绑定(25 credits)千万别买——下文 步骤 08 ~ 12 会在 Blender 里免费帮你把这两件事做得更好。


PART 2 · 纯代码制作低模道具(Low-Poly Props)
02. 生成“可测量”的正交参考图
为什么很多人用 AI 参考图做出来的 3D 道具会变成“漂浮的方块”?因为普通的 AI 设定图带有透视变形和阴影,而且不同视角之间经常自相矛盾(比如侧视图里步枪两脚架是折叠的,3D 视图里却是展开的)。Claude 虽然能“看”图,但没法在透视图上量出准确尺寸,只能瞎猜坐标,零件自然就悬空错位了。
因此,第一步是让 ChatGPT 或其他生图工具生成专门用于测量的正交三视图:
关键原则:必须要求平面的正交视图(Orthographic views)。透视图无法测量,AI 每猜一个数字,模型上就会多出一道缝隙。
- 如果生成图把多个视角拼在了同一张大图里,先让 Claude 把它裁切成独立的单视角图片。
- 如果缺少某个维度的视图,直接手动告诉 Claude 尺寸(例如:“枪托宽度为 5 cm”)。
03. 先写尺寸清单(JSON),再动手建几何体
不要让 AI 一上来就写建模代码,先让它读图并输出结构化的尺寸表:
人工核对一次清单:在 JSON 里改一个填错的数字只需要改一行字;等建完模再发现尺寸不对,就得推倒重建。
04. 固化全局规则,然后“每次新会话只做一个零件”
把永远不变的道具规范写进
CLAUDE.md,避免每次对话重复输入:接着,每做一个零件开启一个新的会话(Fresh Session),一次只让它构建一个部件:
为什么要“一个 Prompt 只做一个零件 + 每次开新会话”? 因为如果在一个会话里描述整把枪,每次微调一个小零件都会重新渲染所有部件,大量图片会迅速塞满上下文窗口(Context Limit)。 模型搭配建议:简单规则零件(枪管、方盒、木板)用 Sonnet 即可;复杂轮廓与连接关节用 Opus。
05. 装配间隙检查与批量生成器
所有零件做完后,运行总装检查并导出:
如果要制作建筑或整条街道,不要一个一个建模,直接让 Claude 写一个参数化生成器脚本:
避坑提醒:千万不要把建筑物或街景道具丢给“图生 3D”大模型。图生 3D 工具默认会生成接近正方形底面的网格——公交车或围栏一旦按真实比例拉长就会变扁,而且生成的贴图往往布满噪点、不够干净。


PART 3 · 用 AI 生成器制作角色(Characters)
06. 绘制专为 3D 生成器优化的角色三视图
用生图工具画角色设定图时,使用以下 Prompt:
- 双手必须空着(Empty hands):任何拿在手里的道具都会在生成 3D 网格时与手指死死熔合在一起,后期根本切不开。手持道具请单独建一张图生成。
- 警惕“假镜像视图”:AI 画图工具经常偷懒把“左视图”画成“右视图”的水平镜像,导致斜挎背带或武器换了边。只发送方向真实的视图。
07. 切分视图并对号入座(避免“后脑勺长脸”)
- 先让 Claude 把角色设定图裁切成等高的单张图片:
view_front.png、view_right.png、view_back.png。
- 使用 Tripo 多视图 API:
- 在 Tripo 开发者平台获取 API Key 并充值少量 Credits,将 Key 存入环境变量。
- 让 Claude 参照 Tripo API 文档写一个轻量客户端脚本:上传图片 → 发起多视图(Multiview)任务 → 轮询状态 → 下载
.glb。 - Tripo 多视图 API 最多接收 4 个槽位:
[front, left, back, right](正视图必填,最少传 2 张)。
为什么必须严格对准槽位? 如果把侧视图放错了槽位,生成的角色很容易在后脑勺上多长出一张脸!
- 免费替代方案(Windows + NVIDIA 本地显卡):在 GitHub 搜索运行
Hunyuan3D-2-WinPortable,它会在本地8080端口启动服务。让 Claude 把同样的视图以多视图 + 贴图模式发给本地服务并保存 GLB。在 8GB 笔记本显卡上,平均约 4 分钟/模型。
- 省钱技巧:发送前务必人工看一眼裁切好的视图(发错图就等于白花钱重跑);远景路人角色可以关掉贴图生成,进游戏引擎后直接给纯色材质。
08. 绑定骨骼前,先用脚本清理网格
拿到生成的
.glb 后,绝不能直接绑骨骼,先让 Claude 跑一遍网格清理与减面烘焙脚本:- 面数预算参考:Roblox 单网格上限为 20,000 面;Unity 主角模型建议 40,000 ~ 70,000 面;远景人群(Crowd)副本建议 3,000 面。
- 必须在设权重前合并顶点(对应脚本第 2 步):生成的模型在接缝处常有重叠顶点,如果不先合并,重叠顶点会被分配不同的骨骼权重,角色一动就会裂开一道缝。
- 务必顺手做一份 3,000 面的低模副本:同屏如果放几百个 4 万面的完整模型,帧率会直接暴跌。
PART 4 · 骨骼绑定:彻底解决“抬手时衣服跟着变形拉伸”
为什么 AI 生成的角色一做动作,衣服就像橡皮泥一样被扯变形?因为 AI 生成器输出的是一层熔合在一起的空心外壳(Fused Shell)——大衣下摆焊死在腿上,衣袖焊死在手腕上。Blender 默认的“自动权重(Automatic Weights)”根本分不清哪里是布料、哪里是肉体,所以角色一抬手,整件外套甚至胸口都会被手臂骨骼硬生生扯上去。
下面 步骤 09 ~ 12 就是专门解决这个顽疾的标准化方案。

09. 将熔合外壳拆分为独立身体部件
核心细节:打标签时必须同时结合“空间位置”与“贴图颜色”。如果只看颜色,后背上一块深色的外套阴影很可能会被误判成“围巾”,导致角色一转头,后背直接被扯出一个大洞。
10. 在网格坐标图上读取关节位置
- 建骨骼前先看圆点位置:肩关节哪怕偏高了 3 厘米,抬手时整条袖子都会被拉长。
- 命名规范:直接采用 Mixamo 标准骨骼命名(
Hips、Spine、LeftArm等),这样导入 Unity 时Humanoid系统就能全自动完成映射。四足动物也用同样流程标出脊柱、尾巴和四肢关节,导入 Unity 时选Generic即可。
11. 用确定性代码规则覆盖自动权重
- 破洞网格急救:如果生成网格因为有破洞导致“自动权重”报错失败,可以先复制一份模型做体素重网格(Voxel Remesh),在重网格副本上绑好自动权重后,再把权重传递(Transfer Weights)回原网格。
- 严禁跨部件平滑权重:千万不要在两个不同部件的交界处做权重平滑(Smooth Weights)——平滑会让手部骨骼的权重泄露到外套上,动作大时直接把外套拉出一根长刺!只允许在同一个部件内部的肩、肘、膝关节附近做平滑。

补充说明:这套硬规则能彻底治好“衣服跟着手臂跑”的问题,但在特定模型上可能会让转头或迈步时的接缝变硬(比如绑在胸部的衣领碰到下巴、臀部权重延伸到了大腿)。紧接着跑 步骤 12 即可逐顶点修好这些接缝。
12. 极限姿态压力测试,用数据定位撕裂点
- 幅度控制:生成模型的腋下没有人工拓扑预留的折叠布线,因此肩膀旋转幅度应尽量贴近静止姿态,过大角度的挥臂很容易拉裂上臂网格。
PART 5 · 纯代码写动画与游戏引擎导出
13. 基于同一个静止姿态(Rest Pose)编写动画脚本
待机(Idle)与行走(Walk)循环动画 Prompt:
战斗攻击动画(Combat Clip)采用完全相同的模式:
铁律:动画一定要直接写在最终要播放它的那套骨架上。如果把一套动画硬复制到另一个静止姿态(Rest Pose)不同的骨架上,角色的双腿会直接扭断。
14. 用量化指标自动体检每一个动画片段
数字能抓出穿地和滑步,但动作帅不帅、自不自然,最后还是要靠你的肉眼把关。

15. 按目标游戏引擎规范导出
致命坑点:导出带骨骼的网格时,务必关闭Apply Transform!Blender 官方文档已明确标注该选项与骨架同时启用会导致严重 Bug(况且我们在步骤 08 已经应用过变换了)。
Unity 导入设置要点
- Rig 类型:双臂双腿带头的人形角色选
Humanoid;四足动物选Generic并手动指定根骨骼(Root Bone)。
- 循环播放:FBX 文件本身不携带循环标记,导入后需在 Unity 的动画设置里手动勾选
Loop Time。
Roblox 导入设置要点
- 入口:
File → Import 3D,自带骨骼的模型将 Rig Type 设为Custom。
- 保留辅助骨:如果模型带有武器挂点(Weapon Sockets)等无蒙皮权重的辅助骨,务必开启
Zero Influence Bones(默认是关闭的,不开启会被直接删掉)。
- 骨骼规范:所有骨骼缩放必须为
1、旋转为0;根骨骼(Root)位于(0,0,0)且不能带有任何蒙皮权重;每个顶点最多关联 4 根骨骼。
- 贴图与尺寸探针:贴图分辨率用
1024 px最稳妥,法线贴图采用 OpenGL 标准。建议在场景里附带一个已知尺寸的小正方体探针(Probe Cube),导入后量一下——因为 Roblox 导入器有时会自动缩放整个文件的比例。
常见问题速查表(When It Breaks)
故障现象 | 根本原因 | 解决步骤 |
道具零件悬空漂浮 | 参考图带有透视变形,AI 只能靠猜坐标 | 见 步骤 02、03(改用正交平视图 + 先写 parts.json) |
做一个道具就撑爆上下文 | 每次修改都重绘整个道具,渲染图塞满会话 | 见 步骤 04(一个 Prompt 只做一个零件 + 768px 渲染) |
角色后脑勺多长出一张脸 | 多视图上传时,把侧视图塞错了方向槽位 | 见 步骤 07(严格核对 front / left / back / right 槽位) |
多长出一条尾巴或肢体 | 生成器只看到了正视图,背面靠脑补 | 见 步骤 07(把背视图 view_back.png 一起传过去) |
武器/道具和手掌熔在一起 | 角色设定图上手里拿着东西 | 见 步骤 06(角色必须空手画,道具单独建图) |
一抬手衣服和胸口跟着拉长 | 躯干和外套被自动分配了手臂骨骼的权重 | 见 步骤 11(用代码把躯干/外套的手臂权重强制归零) |
外套表面突然拉出尖刺 | 在不同身体部件之间做了跨区权重平滑 | 见 步骤 11(严禁跨部件 Smooth,只在单部件内部关节平滑) |
转头或迈步时脖颈/胯部撕裂 | 刚性部件在接缝处碰到了相邻骨骼的权重 | 见 步骤 12(运行姿态压力测试,定位最差顶点逐个修) |
播放动画时膝盖诡异扭曲 | 动画片段是从另一个不同 Rest Pose 的骨架复制来的 | 见 步骤 13(必须在最终播放该动画的同一套骨架上写动画) |
角色靴子脚尖朝后反了 | 绑定前脚部朝向反了 | 绑定骨骼前,先将脚部绕小腿旋转 180 度 |
模型表面出现白盘或黑三角 | 存在零长度法线(Zero-length normal)或翻转面 | 见 步骤 08(清理网格并重新计算法线) |
细电线、文字和 Logo 消失 | 图生 3D 生成器会吞掉极细微结构 | 这类精细几何部件改走 PART 2 纯代码生成 |
本次实战的真实开销账单(What This Run Took)
- 演示视频里的划船女孩(成本 $0.60):
- 使用 Tripo 多视图生成 1 次(耗费 $0.60);
- 40,000 三角面,24 根身体骨骼 + 2 根布料骨骼;
- 5 个纯代码编写的动画片段,在 Unity 中实现划船动作,双手通过 IK 牢牢握住船桨。
- 城市街景里的 15 个角色(成本 $0.00):
- 使用 8GB 笔记本显卡本地免费生成 15 个角色模型;
- 每个角色包含 1 份 40,000 面原模 + 1 份 3,000 面的人群低模副本(实测同屏塞入 238 个 4 万面完整模型时帧率只有 9 FPS,换成 3,000 面副本后流畅运行)。
总结思考:你的下一款游戏更适合哪条路线——是用纯代码零成本生成,用本地显卡免费跑,还是花不到 1 美元交给 Tripo?
- 原文链接(Kensei / @0xKense1):Create 3D Game Models for Free: Opus 5.5 + Blender + Tripo (15 Steps)
