img2threejs 实测 - 电商产品图一键生成 3D 模型
今天发点适合做 3D 模型的东西。 把一张产品图做成能在网页里旋转、拆解、播放动画的 3D 模型,手工建模真的耗时耗力。
今天发点适合做 3D 模型的东西。
把一张产品图做成能在网页里旋转、拆解、播放动画的 3D 模型,手工建模真的耗时耗力。
最近很火的 GitHub 项目 img2threejs 会先把参考图拆成轮廓、部件、材质和细节,再分阶段生成 Three.js 3D 模型,几分钟就能把图片转 3D。
我直接试了一个电风扇,做出来的效果非常不错:
case 1 电钻
提示词:使用 img2threejs,把这张图片重建成可交互的 Three.js 模型。
夹头、扭矩环、机身、手柄和电池的层级完整,第一眼能认出同一类电钻。拆解视图也很清楚,说明程序化部件划分比较成功。
主要差距在大轮廓:重建机身偏长、偏方,手柄太直,电池和机身连接处缺少原图的连续塑料曲面。
case 2 茶壶
提示词:使用 img2threejs,把这张图片重建成可交互的 Three.js 模型。
青绿色釉面、斑驳纹理、壶嘴、环形把手和壶盖共同维持了原图气质,亮部没有明显塑料感,颜色也最接近参考图。
但原图下腹更饱满、上部略收,重建接近圆角桶形;壶嘴根部和把手连接处用了偏大的球形过渡,拆解后尤其明显。
case 3 风扇
提示词:使用 img2threejs,把这张图片重建成可交互的 Three.js 模型。
护网、辐条、叶轮、电机、俯仰支架和底座形成了完整机械系统。
但参考图的叶片视觉数量和角度分布与重建不一致,底座偏扁、偏宽,支架形状也比原图规整。
case 4 背包
提示词:使用 img2threejs,把这张图片重建成可交互的 Three.js 模型。
拉链、织带、插扣、侧袋、肩带和底部挂环都做成了独立结构,顶盖开启、肩带摆动和拆解功能也比较完整。
但参考图有布料下垂、挤压、褶皱、局部鼓起和不对称,重建主体却是规整的圆角长方体。
case 5 香水瓶
提示词:使用 img2threejs,把这张图片重建成可交互的 Three.js 模型。
瓶体比例、短瓶肩、圆柱瓶盖、黑色颈圈、液面和吸液管都抓到了。取盖、按压喷头、喷雾粒子和六组结构分解完成度很高。
但玻璃过淡,厚壁折射和瓶底聚光不够;液体偏不透明、偏红,原图则是有深度变化的透明琥珀色。
img2threejs 把一张物体参考图重建成程序化 Three.js 模型。最终成果主要由 TypeScript 和 JSON 组成,模型几何、材质、灯光、部件关系都写在代码里,不依赖下载的模型文件。
项目地址:https://github.com/img2threejs/img2threejs
工作流工作时会先检查图片能否解码、主体是否完整、分辨率是否太低、遮挡是否严重。然后 Agent 按宏观、中观、微观三个层次拆分物,详细物体还要建立 detailInventory。
轮廓没有通过评审,生成器不会提前制作材质;结构尚未通过,后面的表面细节也不能开始。这种限制可以避免 Agent 一次生成几千行代码,然后在比例、材质和灯光混在一起的情况下反复返工。
每个阶段都会在浏览器中渲染,随后把参考图和渲染图合成一张对照图。硬性指标失败时直接退回修改;多个指标互相矛盾时,再把图片交给视觉模型判断。
项目还设置了迭代上限、停滞检测和重复缺陷检测,防止 Agent 无限消耗 token。
但现在项目中,投影纹理能让正面很像参考图,却无法证明背面结构正确。项目已经加入多角度退化检查,但推测仍然是推测。对尺寸精度有要求的 CAD、工业设计和逆向工程项目不适合只提供一张图片。
使用前直接在 Agent 环境中,把仓库克隆到全局技能目录:
git clone https://github.com/img2threejs/img2threejs.git `
然后给 Agent 一张图片,并写清用途:
提示词:用 img2threejs 把参考图重建为程序化 Three.js 模型。
我们可以把 img2threejs 看作一台 3D 原型机。
轮廓明确、部件关系清楚的物体,很快就能做成可旋转、可拆解、可播放动作的网页模型,但布料褶皱、厚玻璃折射和透明液体,依然需要建模师继续调整。
img2threejs 最适合放在正式建模之前,可以先验证商品的 3D 展示效果,制作活动页和发布会 Demo,教育内容可以用拆解动画讲清内部结构,还能在缺少模型资源时快速补齐交互原型。
原本需要多轮沟通和手工白模才能验证的想法,现在拿一张产品图就能先跑出初稿。
生成结果由 TypeScript 和 JSON 组成,比例、材质、动作和部件关系都能继续修改。开发者可以把模型直接接进网页,再根据实际用途逐步补充细节。
真正能从 img2threejs 省下成本的人,需要知道哪些环节适合交给 Agent 快速试错,哪些细节必须留给人的建模经验。