ThreeDream
全球首个打通 Unreal 的浏览器物理-AI 引擎
引擎自带的包读取器直接打开 Unreal 5 工程的 .umap 与 .uasset,把关卡、网格、材质与声音原样搬进浏览器标签页;固定步长上的确定性 ECS 是唯一事实源,其上的 WebGPU 计算层承载十万粒子与两万软体节点;同一份物理里训练出来的具身策略,原样部署回对局与机械臂。超写实的画面、可复现的物理、可训练的物理 AI,跑在同一个内核里。

直接玩
不用安装,这一页就是入口
演示与本页同域,指针锁定与全屏都已放行:点一下开打,侧栏可以收起,也可以整页全屏。七个页面量七条结论,侧栏的每个数字都从正在运行的引擎里读出来。
点击在页内加载演示,与本页同域;指针锁定与全屏已放行,也可以整页打开。
新标签打开内核
一个内核,三件事
Unreal 进浏览器
无需编辑器、无需原生运行时、无需离线导出:包读取器打开工程自己的 .umap 与 .uasset,关卡流、静态与骨骼网格、材质图、数据资产与 SoundWave 转出可直接游玩的资源,页面如实报告每一处替代。
确定性高性能物理
固定步长上的 archetype ECS 是唯一事实源,渲染每帧镜像、从不回写;TypeScript 参考实现、逐位复现它的自研 Rust wasm 内核、以及作为交叉校验的 Rapier 共用一个接口;WebGPU 计算层把粒子与软体搬上 GPU,零回读。
具身智能的训练场
批化策略梯度 + GAE + learned critic 的学习器,在 Node 里无头训练、在页面里实时训练、在对局里驱动士兵:智能体在模拟物理里学到的,就是玩家与机械臂在真实交互里遇到的。
演示
七个页面,每页量一条结论
截图是这些页面的真实抓取;线上版本由 main 上所有 CI 关卡通过后随本站一同发布。

训练页
页内实时训练的策略梯度学习器,任务 DriveEnv 与 ReachEnv,训练曲线与回放同屏。
/threedream/app/index.html
确定性检查
同一规范场景跑 builtin、wasm 与一次 wasm 回放,在你自己的浏览器里比对摘要。
/threedream/app/physics-check.html
共享设备
同一个 GPUDevice 同时支撑 three.js 渲染与一条裸 WGSL compute;浏览器不给 adapter 时每条结论留在 not run,并呈现实际落到的那一档。
/threedream/app/shared-device.html
粒子
1k–100k 粒子:浏览器实际给了哪个档位、走 blit 还是 CPU 上传、draw call 数、哈希溢出数。
/threedream/app/particles.html
软体
布料 / 多片布 / 立方体 / 绳,最多 2 万节点:island 数、着色批次数、每步 dispatch 数、无竞争标志、最大拉伸。
/threedream/app/soft.html
射击
一场第一人称对局:训练好的 pursuit 策略驱动 bots,对局进行中可切 builtin / wasm / rapier。
/threedream/app/fps.html
UE 关卡
UE 5.5 工程自己的 .umap、.uasset 网格、材质图、数据资产与 SoundWave,读出后在浏览器里走起来也听得到;CC0 场景包与六个士兵默认上身,?kit=0 / ?bots=0 原样摘掉。
/threedream/app/ue-fps.html物理内核
确定性是第一特性
同一串输入,在任何后端、任何机器上得到同一串状态:physics-check 页把这件事交给你的浏览器当场验证。规模层叠在 three.js 自己的 GPUDevice 上,粒子与软体在设备上完成拷贝,不过总线。
三个后端,一套接口
builtin
纯 TypeScript 规范实现,黄金摘要的来源,也是另外两个后端要对齐的那一份事实。
wasm
自研 Rust 内核,wasm-pack 产出;摘要与规范实现逐位相同,Node 里快 2.6–4.9 倍。
rapier
第三方交叉校验,姿态约 3% 偏差 —— 用来证明规范实现没有自说自话。
量出来的档位
100k 粒子
20–26 ms / 步
20k 软体节点
3.9–6.3 ms / 步
CPU 回落
~1.6 µs / 节点
具身智能
同一段循环,无头与页内
学习器与演示共用同一套环境与观测向量:无头训练不碰 GPU,页内训练与对局里的士兵加载同一份 policy,侧栏报出它的 digest,截图永远说得清画面里是哪颗脑。
无头训练
npm run train -- --episodes 4000 --seed 3 --out artifacts/policy.json
训练产物落 artifacts/policy.json;浏览器演示与无头训练共用同一套 env 与观测向量。
点击在页内加载演示,与本页同域;指针锁定与全屏已放行,也可以整页打开。
新标签打开Unreal 管线
直读,不重建模
页面上没有任何东西是为这个仓库重新建模的:摆放、武器拾取与太阳来自工程自己的 .umap,步枪来自工程自己的静态网格;场景包只补工程未随附的平铺表面与天空,一个按钮原样摘掉。
读包
打开 UE 5.5 的 .umap / .uasset:包表、tagged 属性、Oodle 压缩块、网格描述、材质图,以及 SoundWave 与 cue。
转出
导入工具转出 placement、glTF、PNG、清单与可播放音频;清单是页面与测试共用的契约。
穿上
CC0 场景包按关卡自己的几何补上平铺 PBR 表面与 HDR 天空,太阳方位直接从辐射里读。
复现
600 步脚本对局发布摘要,与无头同场的基准值比对;对不上,CI 红,页面不部署。
开源
Open source, coming soon
ThreeDream 会以 MIT 许可开放源代码,仓库公开在即;在那之前,演示、资产与文档都已经在线,这一页就能玩。
github.com/flowinginthewind700/threedreamengine