# 体素微缩建筑工地沙盘

## 原始提示词

见 [完整原始输入](prompt.md)。

## 运行与验证

- 入口：`index.html`。ES Module + import map 加载 Three.js r160（unpkg CDN），**需联网且经 HTTP 托管打开**；无其他外部资源，全部几何体、材质与木纹贴图由代码生成。
- 操作：拖动环视（闲置时自动缓慢环绕）、滚轮缩放；点击桌面前方三个实体旋钮分别切换设备运行速度（0.25/0.5/1/2×）、昼夜循环开关（自动 150 秒循环 / 手动切换阶段）、施工尘土强度（关/轻/重）；空格键切换暴雨。
- 场景要素：实木工作桌 + 沙盘基座；基坑、钢筋加工棚、物料堆放区（钢筋捆/水泥袋/砂石堆）、在建楼房基座（柱/楼板/脚手架）、板房办公区（夜间暖窗）、渣土堆、施工道路；挖掘机×2、渣土卡车×2（接土→行驶→卸料→返回）、塔吊×2（回转/变幅/吊钩）、搅拌罐车、装载机；60 个实例化体素工人；围挡、彩旗、指示灯、灯杆、水电杆、警示标识。
- 技术：重复元素 InstancedMesh 批渲染（围挡柱、钢筋、水泥袋、工人身体/头盔、彩旗、脚手架、标识等）；尘土为自定义 ShaderMaterial 软粒子；昼夜四阶段天空/雾/太阳/人工光源插值；碰撞约束通过机械固定相位循环与路径设计保证活动范围互不重叠、元素限定在沙盘内。

### 验收记录（Playwright Chromium + SwiftShader，HTTP 加载，2026-10-14）

- 场景构成完整（≥40 工人、≥2 挖掘机/卡车/塔吊、≥4 灯光、≥4 组实例化网格）且渲染非黑 ✓
- 挖掘机铲斗姿态持续变化；卡车驶离接土点循环行驶；塔吊持续回转 ✓
- 旋钮切换速度/昼夜/尘土均生效；昼夜手动切换后天空色过渡 ✓
- 空格触发暴雨（雨粒子可见）并可关闭 ✓
- 拖动环视、滚轮缩放、闲置自动环绕 ✓；真实鼠标点击桌面旋钮（射线命中）生效 ✓
- 390px 无水平溢出、移动端渲染正常、无 JS 错误 ✓

## 复盘

- 按任务正文逐项落实（分区、机械、人物、细节、昼夜、交互、实例化、自定义 shader）。施工机械采用“相位循环 + 固定路径”动画系统，挖掘与装卸节奏彼此错开，从设计上避免穿插。
- 验收中发现并修复的问题见 run.json changes（卡车周期、彩旗朝向、信号灯材质、旋钮命中）。
- 已知简化：未使用阴影贴图（用圆形投影假阴影，保证软件渲染环境帧率）；60FPS 目标面向真实 GPU（软件渲染器仅验证功能）；“碰撞约束”以固定相位设计实现而非逐帧物理检测；“添加新场景进去”按上下文理解为交付本新场景。

<!-- archive:start -->
## 当前归档信息（自动生成）

- 实验 ID：`voxel-construction-site--deepseek-v4-pro-0813-max-r01`
- 模型：DeepSeek-V4-Pro-0813；推理档位：max
- 类型：single-html；预览：static；网络：required
- [完整原始输入快照](prompt.md) · [主题与其他版本](../../../../topic.html?id=voxel-construction-site)
- 输入记录：完整输入快照：用户总体指令（批量执行全部案例、模型名 DeepSeek-V4-Pro-0813、档位 max、使用当前会话）+ 任务正文 v1 逐字原文。会话未另开、未委派子代理。
- 工具：claude-code。Claude Code CLI 会话（Windows 11），用户指定模型名称为 DeepSeek-V4-Pro-0813；会话环境自报模型字符串 deepseek-v4-pro[1m]。推理档位 max（/effort 已设 max）。验收用 Playwright Chromium + SwiftShader（--enable-unsafe-swiftshader）经本地静态服务器（HTTP）加载执行；软件渲染环境仅验证运行与交互，60FPS 目标以真实 GPU 为准。
- 运行方式：浏览器直接打开本目录入口；CDN/外部素材需要联网。
- 费用记录：Deepseek 批次合计 13.77 CNY（11 个案例；批次 deepseek-v4-pro-0813-max-2026-10-14；未记录单案例费用）
- [主页面](../../../../demos/voxel-construction-site/runs/deepseek-v4-pro-0813-max-r01/index.html)

### 部署适配记录

- 首次生成后修复：渣土卡车循环周期误为 480 秒（时间因子 0.05），改为 24 秒循环；挖掘机循环定为 12 秒。
- 首次生成后修复：警示彩旗实例化后错误的整体旋转/抬升，改为锥体默认朝向直接放置到围栏上沿。
- 首次生成后修复：施工指示灯材质克隆未挂载到灯体且每帧新建 Color，改为克隆材质直接使用并复用 emissive 颜色对象。
- 首次生成后修复：旋钮射线命中判定沿父链查找所属旋钮组（原实现可能越过旋钮组到达场景根节点）。
- 首次生成后调整：增加 knobScreenPos / debugRay 等验收钩子（页面内使用模块作用域的 THREE）。
- 任务正文末尾“添加新场景进去”按上下文理解为交付本新场景（单文件沙盘），未涉及对既有页面的追加。
- 迁移来源：F:/dev/ai-coding-demo-test/demos/voxel-construction-site/runs/deepseek-v4-pro-0813-max-r01（分支 experiment/deepseek-v4-pro-0813，提交 90de279）；保留源实验的已测试代码、完整输入快照与复盘记录。
- 迁移验收：通过本地 HTTP 页面补拍 1440×960 Edge 桌面截图；入口返回 HTTP 200、无页面脚本异常，390px 视口未发现页面横向溢出。
- 维护者于 2026-10-22 按 v3 对本轮桌面、手机及补充状态逐图重评并绑定 captures 证据；旧截图和 v2 评分见 catalog/score-reviews/2026-10-21-v3-source.json。未重跑模型或改写实验源码，截图不证明完整功能、算法、手势或性能。
<!-- archive:end -->
