Files
Mujoco_WASM/README.md
T
chenlin f4b415c54f
web-platform-ci / TypeScript、Lint、Unit、Build (push) Has been cancelled
web-platform-ci / Playwright E2E (push) Has been cancelled
web-platform-ci / TypeScript、Lint、Unit、Build (pull_request) Has been cancelled
web-platform-ci / Playwright E2E (pull_request) Has been cancelled
refactor(web-platform): release V0.6 精简代码
2026-08-28 14:10:16 +08:00

72 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# MuJoCo Web 仿真平台
以 WebAssembly 为运行核心的本地机器人仿真、控制与强化学习调试平台。浏览器直接加载 MJCF、URDF、文件夹或 ZIP 工程,使用 Three.js 渲染,并通过 MuJoCo WASM 在本地执行物理仿真。
> 本仓库是面向 Web 产品的应用仓库,不再镜像 MuJoCo 的原生 C++、Python、MJX、Unity、桌面模拟器和上游测试源码。MuJoCo 运行时由官方 npm 包 [`@mujoco/mujoco`](https://www.npmjs.com/package/@mujoco/mujoco) 提供。
## 功能概览
- MJCF/XML、URDF、文件夹和 ZIP 工程导入
- ROS `package://`、常见 URDF 兼容转换及 DAE 降级处理
- Three.js 模型、碰撞体、坐标系、关节轴、质心和惯量可视化
- 播放、暂停、单步、重置、变速、关节拖动与外力交互
- 浏览器内 Python 控制器(Pyodide
- ONNX 强化学习策略推理(ONNX Runtime Web
- 可选的本机 mjlab 训练桥接服务
- 响应式工作区、源码编辑、性能监控和中文诊断
## 快速开始
环境要求:Node.js 24+;仅使用训练桥接服务时需要 Python 3。
```bash
npm install
npm run dev
```
打开 Vite 输出的地址,默认是 <http://localhost:5173/>。
## 常用命令
```bash
npm run dev # 启动开发服务器
npm run build # 生产构建到 web-platform-dist/
npm run preview # 预览生产构建
npm run typecheck # TypeScript 检查
npm run lint # ESLint
npm test # Vitest 单元测试
npm run test:e2e # Playwright 浏览器测试
npm run test:training-server # Python 训练桥接服务测试
npm run check # 除 E2E 外的完整检查
```
## 仓库结构
```text
.
├── web_platform/ React、TypeScript、Three.js 前端与测试夹具
├── training_server/ 可选的本机强化学习训练桥接服务
├── controllers/ 可导入平台的 Python 控制器示例
├── package.json 根目录统一开发入口
└── LICENSE Apache License 2.0
```
核心前端分层:
- `web_platform/src/app/`:工作区、工具栏、面板和对话框
- `web_platform/src/project/`:工程导入、路径规范化和 MEMFS
- `web_platform/src/simulation/`MuJoCo WASM 会话与仿真调度
- `web_platform/src/viewer/`:Three.js 渲染、选择和物理交互
- `web_platform/src/controller/`Pyodide 控制器运行时
- `web_platform/src/rl/`ONNX 策略运行时
详细使用说明见 [`web_platform/README.md`](web_platform/README.md),训练服务说明见 [`training_server/README.md`](training_server/README.md)。
## 数据与安全边界
模型、资源、Python 控制器和 ONNX 策略默认只在当前浏览器会话中处理,不上传到服务器。训练桥接服务只监听本机回环地址,并仅执行服务端允许列表中的任务。
## 上游与许可证
本项目使用 Google DeepMind 的 MuJoCo WebAssembly npm 包,并保留 Apache License 2.0 许可证。MuJoCo 是 Google DeepMind 的开源项目;本仓库不是 Google 官方支持的产品。