行业动态
wechat ·
@极客之家
丢张户型图进去,AI直接跑出3D装修模型,这3个Skills有点离谱啊!
未提供
正文
前阵子在 GitHub 上翻到一个项目,Blueprint3D,挺冷门的。用法很简单,扔一张 2D 户型图进去,它输出一个 3D 建筑模型。以前干这种活得在 SketchUp 里一面墙一面墙地描,现在跑一次推理就完事。
看完 README 我有个疑问,模型出来以后呢,总不能放在查看器里转两圈就完了。顺着这个问题往下找,又翻到两个项目,正好把后面的事接上了。
一个是 Pascal Editor,内置 MCP 服务的 3D 建筑编辑器,Claude Code、Codex 这些 agent 能直接连上去改墙、摆家具。另一个是 MengTo 的 Skills 仓库,里面有个 3d-virtual-tour 技能,专门教 agent 把 3D 场景做成漫游导览,点一下房间名就能走进卧室、客厅,跟看房软件一个玩法。
以前干这件事要开三四个软件,中间来回导格式,现在一条本地流程就能串起来,我把这3个 Skills 串起来,做出的成果物效果相当不错,今天给大家分享一下。
先简单介绍下
Blueprint3D:户型图生成 3D 结构
仓库:ashnomad/Blueprint3D
一个深度学习管线,喂一张 2D 户型图进去,输出 3D 建筑模型,OBJ 格式。内部拆成三个模块:SplitFloor 认墙、门、窗,SemaFloor 认房间边界和可居住区域,ForgeFloor 做形态学清洗;清洗完的 2D 数据再拉成 3D 网格。
Blueprint3D 可以让我们拿到的是一个几何语义干净、格式标准、可以继续往下游工程管线里灌的3D成果物。
Pascal Editor:AI 可直接操作的 3D 编辑器
仓库:pascalorg/editor
3个项目里我最喜欢的一个。MIT 协议,25k 多 star,浏览器里直接跑,也有命令行版本,底层是 React Three Fiber 加 WebGPU。
编辑器本身中规中矩,真正有用的是内置 MCP 服务。装好以后,Claude Code、Codex、Cursor 这些 agent 可以直接连上场景,我们说人话,它来改墙、摆家具、调布局,每一步都能撤销,撤销历史 50 步。数据存在本机的 SQLite 文件里,路径是 ~/.pascal/data/pascal.db,不走云端。
官方还配了两个 agent 技能包,pascal-3d 管场景操作,furniture-fit 管家具摆放评估,摆之前会先检查空间够不够,不会瞎摆。
3d-virtual-tour:能点着看的漫游导览
仓库:MengTo/Skills
3d-virtual-tour 主要是教 agent 用 Three.js 把 3D 场景做成可交互的漫游网页。MengTo 这个仓库是 MIT 协议,7000 多 Star,收了 176 个这类技能,3d-virtual-tour 是其中一个。
手册把漫游拆得很细。导览路线怎么走,过门口要减速,房间列表、户型图热点、场景里的按钮全部联动,点主卧就飞进主卧,进去以后还能原地拖动环绕看,看完一键回到路线。手机上怎么滑、页面切走了怎么暂停,这些边角都写了验收标准。
有一点说清楚,它只管漫游这层皮,模型还是用我们在 Pascal Editor 里做好的那个。产出是一个网页,可以直接发给朋友点开看。
完整流程
整体流程一张图:
户型图生成 3D 结构
Blueprint3D 要求 Python 3.8 以上,依赖有点多,我装的时候用的这行:
pip install torch torchvision numpy matplotlib opencv-python pillow pyvista scikit-image tqdm pandas albumentations scipy scikit-learn
有 CUDA 显卡的话推理会快不少。然后一条命令:
python ForgeFloor/extruder.py --input 户型图.jpg --auto --output_dir outputs/
想要交互式预览就换成 --gui 参数。输出里有三样东西,OBJ 模型、分割叠加图、分割数据 CSV,都落在 outputs 目录。
安装完成之后,先拿一张户型图试试:
上传的户型图
这是 Blueprint3D 给我们交付的成果物:
OBJ 模型、分割叠加图、分割数据都有户型 3D 建筑模型
AI 参与模型编辑
Pascal Editor 不用 clone 仓库,我装的时候就一条命令:
npx @pascal-app/cli editor
跑起来后,编辑器和 MCP 服务会一起启动,端口冲突它自己避开。Claude Code 用户可以直接装官方插件:
/plugin marketplace add pascalorg/editor
/plugin install pascal-agent-skills@pascal
Codex 用户对应 codex plugin marketplace add pascalorg/editor,装法一样。装好之后 agent 就连上场景了。
后面改模型全靠说话。
我准备了几条提示词,到时候拿真实户型图跑的时候直接用,你们拿到自己的户型也可以照这个思路改:
把这个户型的 OBJ 结构重建为可编辑的墙体和房间,保持原始尺寸比例,
每面墙建完报一下长度和厚度
每面墙都标注了小序号,厚度、门洞尺寸、长度等等都标出了精细数据,我就问你牛不牛?
接下来我想往3D模型里面放置家具了,给一段提示词:
在客厅南墙下放一张三人沙发,离墙 10 厘米,正前方 40 厘米放茶几,
尺寸分别 210×90×85 cm、110×60×42 cm。
所有家具放置前先检查会不会和墙体、门窗冲突
过程中会考虑墙体、门窗,尺寸精度能不能放进去:
我发现客厅南墙应该是放餐椅的,但提示词写错了也没关系,所有操作都能 Ctrl+Z 撤回去,墙和房间的几何还在你手里,不会被生成模型的随机漂移改掉。随时对话调整就行,最终根据我的审美,室内装修设计第一版出炉。
来吧,看看这一版的3D效果展示,我觉得趋近完美:
做成能点着看的漫游
模型在 Pascal Editor 里摆好以后,最后一步交给 3d-virtual-tour。它不用装环境,把仓库拉下来,让 agent 读里面的 SKILL.md 就行:
git clone https://github.com/MengTo/Skills.git
然后在 Codex 里这么说:
读一下 Skills/agent-skills/3d/3d-virtual-tour/SKILL.md,
按它的流程把刚才的户型做成一个 Three.js 漫游网页:
开场一条从玄关走到客厅的导览路线,
左边放一个房间列表,点卧室、厨房、客厅都能直接切过去,
进房间以后可以拖动环绕看,右上角放一个返回按钮,
手机上也要能滑
总览主卧次卧
价值与局限
最明显的变化是体力活少了。描墙、拉模型这种机械劳动压缩成一条命令,摆家具变成几轮对话,中间不用在几个软件之间来回导格式。
三个项目都开源,前两个本地跑,数据放在本机 SQLite。户型图这东西其实挺隐私的,面积、格局、房间用途全在里面。
模型做出来也不只是用来看的,变成能分享的东西了。导览是一个网页,发给谁都能点开,点房间名进去转一圈,比甩一堆截图管用。
门槛也不是没有。Blueprint3D 太新,识别翻车有几率,我也是通过三轮对话,才拿到满意的3D结构。漫游那一步全靠 agent 现写 Three.js,效果好坏一半看模型质量,一半看 agent 的手艺。这套流程现在能跑通,也值得玩,给出的数据尺寸也挺准的,但也不能闭眼用,真装修还是得实测实量。
喜欢折腾的人,大概会觉得够玩了,以后家里想装修,直接用户型图,自己跑一下各种家具摆进来的效果,也是可以的。