体素切片工坊 · dsh-voxel-forge

体素切片工坊 · dsh-voxel-forge

2026-11-13 20:55:18 0点赞 0收藏 0评论

体素切片工坊 · dsh-voxel-forge

DeepSeek Harness(dsh)插件:上传一个 3D 模型(GLB/GLTF),真切片成逐层可拼的 LEGO 体素——一格一砖、三维洪泛保空腔、贴图面积加权取色,装配出 set.html 3D、model.ldr、BOM 与可拼搭检查报告。参考图本身就是体素风时,也可以用基本形程序化生成。

引擎、零件几何与装配检查源自 lego-forge(MIT,与 dsh-lego-forge 同源);切片方法论源自 lego-3d-voxel(Python → Node 全量重写,零 Python 依赖,numpy 向量化 → TypedArray + BFS);LDraw 零件几何 © LDraw.org (CC BY 2.0)。

体素切片工坊 · dsh-voxel-forge

装上以后有什么

能力说明面板上传入口(GLB + 图片)拖拽/点选 .glb/.gltf(≤80 MB)→ 上传即 64 层快速切片,立刻出验收图;.jpg/.jpeg/.png/.webp → 存为参考图,agent 用视觉读图后程序化生成voxel_forge 工具(12 个 action)upload 本机导入 GLB 或参考图(按扩展名分流)· slice 切片(courses/merge/absorb/denoise/darkdetail)· scene+gen 程序化生成 · build 装配 · preview 验收图 · probe 体检(颜色分布/正面 ASCII/深度剖面)· downscale 缩放 · ball 验证球 · read(含 what="ref" 取参考图路径)/list/delete图片路线上传图片即建模型并落盘 ref/ref.;agent read_image 看图判断是否体素风 → 写场景 → gen 出体素;写实照片会先跟用户对齐预期切片管线(vox.py 全量移植)7 点采样 + 面积加权投票 → 暗细节保底(闭眼/刻线)→ 三维洪泛判内外(保悬垂空腔)→ 反填 carve → 表面取色 → 材质归并/孤立色吸收 → 内部 BFS 传色 → 去噪侧栏「体素切片工坊」面板上传入口 + 模型库(GLB 切片 / 图片参考标签)/ 参考图展示与「按参考图生成」/ 切片参数表单 / 三视图+分层图(灯箱放大)/ 3D(砖块 ↔ 体素对照,框选批注继承自 forge viewer)/ 颜色分布 / 检查报告 / BOM+LDraw 下载 / 时间线交付物set.html(独立 3D 页)、model.ldr、parts.csv、report.txt、check.json、验收图 PNG

两条路线

手上有什么走哪条.glb/.gltf(扫描件/雕刻/游戏资产,带贴图)切片:形体忠实度最高,颜色来自模型贴图体素风/像素风参考图(块面清楚)程序化:面板上传图片(或 action="upload", path=<图片路径>)→ agent read_image 看图 → action="scene" 写基本形场景(ellipsoid/revolve/tube/repaint/hash01 确定性杂色)→ gen写实照片都不成立——先对齐预期,不要硬做(取色会形状失真 + 颜色全错,实测被否决)

使用

对话里直接说:

  • 「我刚在面板传了个鹿模型,切成积木」——agent 走 slice courses=128 → 看验收图 → probe 排查 → build → 汇报检查报告

  • 「小一半」——downscale(归并而非重切;1 格宽细结构会变粗或断开,agent 会主动说明)

  • 「参考这张像素图画个浮岛」——先传图(面板拖入图片,或给本机路径),agent read_image 看图 → scene 写场景 → gen → build

  • 「按这张图做个积木」——同上;写实照片 agent 会先跟你确认(照片取色形状会失真)

或打开侧栏「体素切片工坊」:拖一个 GLB 进上传区,看三视图确认朝向/比例/空腔,点装配下载 LDraw 和 BOM。

切片参数速查

参数默认取值courses 砖层数96人像 128;小物件 64~96;96 层五官会糊merge 颜色归并default按材质分组(红袍的暗红阴影保留,碎条纹并入);none 看原始贴图absorb 孤立色吸收34~6 治脏;保护 Black/Whitedenoise 去噪2会吃 1 格宽细线;查特征丢失设 0 对照darkdetail 细黑线保底0.32黑覆盖占比达标就取黑(只对浅色格生效)

已知边界(如实说明,不硬修)

  • voxel 塑像通常有大量 not connected(底部悬空/异色同层/悬挑)——体素特性,可拼搭检查按报告如实汇报,不为 0 错误补柱子(会把空腔焊死)

  • 眼睛/细刻线在 128 层仍可能不出(carve + darkdetail 已实装;上游财神件同样未解决)——用 probe profile 查是不是被埋,查不出就如实说

  • 贴图串色(同材料近似色之外的大片异色)归并表治不了

开发

npm i npm test # 21 个单测(切片管线/空腔/双色分区/确定性/预览像素/基本形/工具全链) npm run smoke # 离线冒烟:工具直调 + 面板 API 全路由(上传入口/路径穿越拦截/viewer 数据契约) npm run live # 合成 GLB → 上传 → 切片 → 装配全链(真实文件+真实引擎,无网络) npm run dev # 面板独立预览:DSH_HOME=<目录> node scripts/devserver.mjs 5187

数据落在 $DSH_HOME/voxel-forge/<模型名>/:model.glb + volume.json + previews/(验收图)+ out/(交付物)+ vox.json(体素快照)+ versions/(装配版本)+ journal.jsonl(时间线),原子写。

结构

src/host.js voxel_forge 工具(12 action)+ 装配 lib/glb.js GLB 解析 + PNG/JPEG 贴图解码(pngjs/jpeg-js)+ 合成 GLB(测试/冒烟) lib/voxelize.js 切片主管线(vox.py 全量移植;含一处上游注释/实现对齐修正——逐面主色取面积最大) lib/preview.js 三视图 + 分层图 PNG(preview.py 移植) lib/probe.js 体检:颜色分布 / 正面 ASCII / 深度剖面(probe.py 移植) lib/downscale.js N×N×N 桶归并缩放(downscale.py 移植,众数定色不插值) lib/genvox.js 程序化基本形 + 确定性 hash01(gen.py 移植;场景=JS 模块零依赖) lib/assemble.js volume.json → 引擎 Model(一格一砖)→ pack/check/export + 版本快照 + 体素快照 lib/store.js / ops.js $DSH_HOME 持久化 + 工具/面板共用业务层 lib/api.js /voxel-forge 面板路由(上传/切片/装配/viewer 数据/白名单文件) engine/ viewer/ lego-forge 引擎与 3D viewer(450 真零件几何 + 框选批注桥) client.js / lab/ 浏览器半边(侧栏入口 + iframe 面板,明暗跟随 dsh 主题) skills/voxel-forge/ 方法论技能(铁律/参数速查/验收标准;references/ 保留上游四篇完整复盘) examples/island.mjs 鲸鱼浮岛场景示例(JS 版上游 whale-island)

License

MIT(本插件代码)。装配引擎与零件几何源自 lego-forge(MIT);切片方法论与上游脚本参考 lego-3d-voxel;LDraw 零件几何 © LDraw.org (CC BY 2.0)。

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
0
扫一下,分享更方便,购买更轻松