|
|
d945e414d7
|
feat(scene3d): Scene3D widget — bricks3d 最小闭环(后端声明式场景描述符→three.js 本地渲染→entity_tapped 事件回传)
- scene3d.js: Scene3D widget(VBox 子类),支持 box/sphere/cylinder/model 实体
内联 scene 或 scene_url 两种描述符来源;Raycaster 拾取→dispatch entity_tapped
活动对象(scene/camera/renderer/mesh)只存实例私有字段,防 JSON.stringify 循环引用
s3_dispose() 释放 WebGL 资源;set_entity_color/set_entity_visible 公共 API
- build.sh: scene3d.js 加入 SOURCES
- 3parties/three.min.js: r149 UMD 全局版(608KB,npmmirror 下载)
- examples/scene3d_demo.html: 演示页(4 实体场景 + scene_ready/entity_tapped binds)
验证(CDP 实测):场景就绪事件✅ 点击拾取✅ entity_tapped→binds→状态栏更新✅
球点击变色 #f59e0b→#ef4444 全链路通过;干净重载 0 JS 异常
|
2026-08-27 11:31:10 +08:00 |
|