This package provides functionality to load objects and scenes from the MolmoSpaces
ecosystem into Sapien and ManiSkill.
🚧 REPOSITORY UNDER DEVELOPMENT 🚧
This package is still experimental and under active development. Breaking changes might occur during updates.
Updates 🤖
- [2026/02/11] : Code for loading assets and scenes from
MolmoSpacesinmjcfformat into actors an d articulations that can be used with aSapienscene or aManiSkillscene.
Just install it using your package manager of choice (will grab all required dependencies,
including maniskill and sapien):
# If using `conda`, just use `pip` to install it
pip install -e .[dev]
# If using `uv`, use `pip` as well
uv pip install -e .[dev]
MacOS support, make sure you follow these instructions on how to
setup Vulkan on your system. The dependencies already install the nightly version of
ManiSkill, so just have to do the Vulkan setup.
We have a helper script ms-download that can be used to grab the desired assets and
scenes datasets in mjcf format, which are the ones supported by our provided loaders.
- To get the assets for a specific dataset (e.g.
thor,objaverse):
ms-download --type mjcf --install-dir assets/mjcf --assets thorThis should have installed the thor assets into a cache directory at $HOME/.molmospaces/mjcf/objects/thor,
and then symlinked the correct version into the provided folder (in this case, at ROOT-OF-REPO/assets/mjcf/objects/thor).
- To get the scenes for a specific dataset (e.g.
ithor,procthor-10k-train, etc.):
ms-download --type mjcf --install-dir assets/mjcf --scenes ithor procthor-10k-trainThis should have installed the ithor and procthor-10k-train scenes into a cache directory at
$HOME/.molmospaces/mjcf/scenes/ithor and $HOME/.molmospaces/mjcf/scenes/procthor-10k-train
respectively, and then symlinked the correct version into the provided folder (in this case, at
ROOT-OF-REPO/assets/mjcf/scenes/{ithor,procthor-10k-train}).
MolmoSpaces. If you ran
the setup for the MuJoCo version of the package, from the molmo_spaces folder, the assets
and scenes will be saved in a different cache folder, and symlinked to the assets folder, instead
of the assets/mjcf folder. You can use those scenes just fine, just modify the path given to the
scripts accordingly.
The example ex_mjcf_loader.py shows hou to load a simple mjcf asset from MolmoSpaces
into a Sapien scene, and show it in the viewer. Just run the following command:
python -m molmo_spaces_maniskill.examples.ex_mjcf_loader --filepath "assets/mjcf/objects/thor/Kitchen Objects/Fridge/Prefabs/Fridge_1/Fridge_1_prim.xml" \
--mode articulation \
--rotateThe viewer should be launched and you should be able to see the fridge in the viewer, like this:
Kooha-2026-02-10-23-23-53.mp4
The example ex_scene_loader.py shows how to load a scene from MolmoSpaces into
a Sapien scene, and show it in the viewer. Just run the following command:
python -m molmo_spaces_maniskill.examples.ex_scene_loader --filepath assets/mjcf/scenes/procthor-10k-train/train_0.xmlThe viewer should be launched and you should be able to see the scene in the viewer, like this:
Kooha-2026-02-10-23-59-16.mp4
This package builds on top of both Sapien and ManiSkill:
@article{taomaniskill3,
title={ManiSkill3: GPU Parallelized Robotics Simulation and Rendering for Generalizable Embodied AI},
author={Stone Tao and Fanbo Xiang and Arth Shukla and Yuzhe Qin and Xander Hinrichsen and Xiaodi Yuan and Chen Bao and Xinsong Lin and Yulin Liu and Tse-kai Chan and Yuan Gao and Xuanlin Li and Tongzhou Mu and Nan Xiao and Arnav Gurha and Viswesh Nagaswamy Rajesh and Yong Woo Choi and Yen-Ru Chen and Zhiao Huang and Roberto Calandra and Rui Chen and Shan Luo and Hao Su},
journal = {Robotics: Science and Systems},
year={2025},
}
@InProceedings{Xiang_2020_SAPIEN,
author = {Xiang, Fanbo and Qin, Yuzhe and Mo, Kaichun and Xia, Yikuan and Zhu, Hao and Liu, Fangchen and Liu, Minghua and Jiang, Hanxiao and Yuan, Yifu and Wang, He and Yi, Li and Chang, Angel X. and Guibas, Leonidas J. and Su, Hao},
title = {{SAPIEN}: A SimulAted Part-based Interactive ENvironment},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2020}}