☰
图片转 3D 世界完整指南:image-blaster 如何把一张照片变成可探索场景
2026/11/4 1:54:44 网站建设 项目流程

图片转 3D 世界完整指南:image-blaster 如何把一张照片变成可探索场景

【免费下载链接】image-blasterAn image-to-world skillset for Claude.项目地址: https://gitcode.com/gh_mirrors/im/image-blaster

image-blaster 是一个开源的 AI 技能包,专门做图片转 3D:给它一张普通照片,它会在几分钟内产出一整套可漫游的 3D 世界——高斯泼溅(Gaussian Splat)静态环境、独立 GLB 动态物体、配套环境音效,一样不少。传统做法里这些资产要建模师排期好几天,这里则压缩成一次对话。

先把产物想清楚:一个"世界"由 3 类文件组成

理解这个项目最快的方式,是看它最终吐出的东西。每次生成完成后,worlds/<世界名>/output/目录里会有三类文件,分别由不同的模型负责:

产物格式负责生成的模型
可漫游的静态环境.spz(高斯泼溅)World Labsmarble-1.1
场景中的动态物体(逐个建模).glb/.objFAL 上的 Hunyuan 3D(可换 Meshy)
环境循环音 + 物体碰撞音效.mp3ElevenLabs SFX

另外还有一类"幕后"产物:图片清理阶段会用到nano-banana(默认)或gpt-image-2(备选)做图像编辑,负责把物体从原图里抠出来、生成干净底片。

申请 World Labs 与 FAL 的 Key 并写入 .env

整条流水线只依赖两个平台的 API Key,变量名已经定义在 .env.example 里:

  • WORLD_LABS_API_KEY:生成静态环境用
  • FAL_KEY:生成 3D 模型和音效用(Hunyuan 3D、ElevenLabs SFX 都走 FAL)

把两个值填进项目根目录的.env即可。之所以要两个 Key 而不是一个,是因为"环境"和"物体/声音"分属不同厂商的模型,FAL 在这里充当了统一调用入口。

放好图片后,对 Claude 说这句话

跑通全流程只需要下面几步,每步都尽量短:

  1. 克隆仓库并进入目录:
    git clone https://gitcode.com/gh_mirrors/im/image-blaster cd image-blaster
  2. 安装 Claude CLI 后在项目根目录运行claude,启动时把上面两个 API Key 交给它(这一步就是在完成.env配置)。
  3. 把想转 3D 的图片放进input/目录。
  4. 对 Claude 说:"blast it and confirm each step with me"——让它执行每个阶段并逐步跟你确认。

省钱小贴士:图片分析和物体确认阶段不产生费用。可以先让 Claude 把识别到的"可搬走物体"列出来,你再决定哪些真正要做成 3D 模型,避免为一堆不重要的物体付费。

六个阶段在幕后做了什么

这些"逐步"背后,其实是.claude/skills/目录下的一组 Claude 技能在自动接力,每个阶段一个目录:

  1. image-blast-project:创建worlds/<世界名>/结构,把源图归档进source/。没有统一的项目骨架,后面的阶段就没地方落盘。
  2. image-blast-uncover:让 AI"读图",提取场景里可搬走的动态物体,写入场景描述image.json。
  3. image-blast-plate:把已确认的物体从图中移除,得到"干净底片"。这一步很关键——底片如果还带着物体,生成的静态环境会把它们再"长"一遍,场景里就会出现双胞胎。
  4. image-blast-world:把底片连同合成好的"空环境"描述发给 World Labs,产出.spz静态世界(含碰撞体、全景图等配套资产)。
  5. image-blast-3d:每个物体单独提取、单独建模,保证每个动态物体都是独立、可复用的模型文件。
  6. image-blast-sfx:生成环境循环音,并为每个物体配上专属碰撞音效。

所有阶段产物统一收在worlds/<世界名>/output/,中断后可以断点续跑,不用从头再来。

用 bun run dev 打开网页查看器

仓库自带一个 React + Three.js 查看器(入口 WorldViewer.tsx),在根目录执行bun run dev启动。它会扫描本地worlds/目录,自动列出所有已生成的世界:

  • 侧边栏可以切换不同世界,以及同一世界的多个生成版本;
  • 按`键可隐藏全部 UI,进入纯探索模式;
  • 支持触屏操作,也能环绕指定物体调整视角。

场景光照由内置的全景环境贴图驱动,效果类似下面这张:

小细节:如果生成失败或资产缺失,查看器只加载本地文件、不依赖任何远端 URL,所以断网也能回看已生成的世界。

面数、减面、PBR:3D 模型质量的 4 个开关

默认情况下 Hunyuan 3D 会输出约 5 万面、启用 PBR 材质的贴图模型。对模型不满意时,直接指示 Claude 调整参数即可,不用碰脚本:

参数作用默认值
--face-count目标面数,取值 40000~1500000,越大细节越多50000
--generate-typeNormal贴图模型 /LowPoly低模减面 /Geometry纯白几何体Normal
--enable-pbr是否生成 PBR 材质true
--provider切换 3D 生成商,meshy可换用 Meshyhunyuan

做快速预览时可以先用LowPoly或 Geometry-only 省时间,确认造型对了再拉高面数出正式版。

产物的去向:游戏引擎、DCC 还是网页

这套产物格式是通用的,可以直接嵌入:

  • 游戏引擎:Unity、Unreal、Godot;
  • 桌面 DCC:Blender、3DS Max、Maya;
  • 网页应用:任意 Three.js 项目或 Electron 应用。

适用场景很宽:游戏关卡概念预演、机器人训练场地、电影勘景、建筑渲染草图,或者单纯想把童年卧室 3D 化。整个流程的起点始终是同一件事——一张照片;终点则是一个能走进去、能听到声音、能继续往引擎里搬的世界。

【免费下载链接】image-blasterAn image-to-world skillset for Claude.项目地址: https://gitcode.com/gh_mirrors/im/image-blaster

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询