这个项目能做什么
Genesis World是一个面向物理AI开发、特别是机器人与具身AI学习的模拟平台。它在Pythonic模拟接口背后整合了统一多物理引擎、名为Nyx的 photorealistic渲染器以及名为Quadrants的跨平台编译器。该项目此前名为Genesis,于2024年12月作为学术项目启动,现由Genesis AI支持,采用Apache 2.0许可证。
平台分为四层:模拟接口层提供用户API,支持URDF、MJCF、OBJ、GLB和USD等格式的资产解析、实体访问器、控制器、传感器、并行异构环境及内置GUI;物理层是统一多物理引擎,集成刚体动力学、FEM、MPM、粒子方法(PBD和SPH)、uipc后端、显式耦合器和SAP,共享单一场景与状态;渲染层提供Nyx、Luisa(DSL光线追踪器)和Pyrender(光栅化器)三条相机传感器渲染路径;编译器层Quadrants将Python内核代码编译至CUDA、AMD ROCm、Apple Metal、Vulkan、x86和ARM64,并支持自动微分、GPU图和fastcache。
仓库提供按物理、渲染和模拟接口分组的可运行demo。物理示例涵盖刚体场景(Franka方块操控、碰撞塔、接触流形)、可变形与流体求解器(FEM约束、MPM教程、沙轮、SPH耦合、PBD液体与布料、稳定流体烟雾、IPC机器人布料遥操作)、多求解器耦合(布料-刚体、刚体+MPM附着、切割龙、水轮、冲洗方块)及SAP耦合示例。渲染示例包括跟踪实体、动画相机及Nyx场景探索。模拟接口示例涵盖机器人控制、ImGui关节控制、异构环境、域随机化、深度相机/IMU/激光雷达/触觉沙箱/接触力/表面距离/温度网格等传感器、GUI调试绘制、鼠标交互、微分IK控制器、批量IK、无人机悬停训练及蠕虫与肌肉高级教程。
通过pip安装genesis-world包即可使用,需Python 3.10至3.14并预先安装PyTorch。开发安装可从克隆仓库执行pip install -e ".[dev]"。可选扩展包括Linux或Windows x86上配合NVIDIA GPU的pyuipc(IPC求解器)及gs-nyx(Nyx渲染器)。Quadrants自动捆绑。项目还提供基于uv的工作流文档,包含平台特定的PyTorch安装命令及通过uv run运行示例的方法。
项目欢迎通过GitHub Issues和Discussions提交PR、bug报告和使用建议。致谢多个开源依赖,包括Taichi(Quadrants分支的起源)、libuipc、FluidLab、SPH_Taichi、Ten Minute Physics、PBF3D、MuJoCo、libccd、PyRender、LuisaCompute、LuisaRender、Madrona及Madrona-mjx。文档托管于Read the Docs。
评论
0 评分人数达到10人后显示
登录后参与讨论。