{"repo":"stillonearth/bevy_mujoco","free":true,"listed":false,"github":"https://github.com/stillonearth/bevy_mujoco","clone":"git clone https://github.com/stillonearth/bevy_mujoco.git","description":"Render MuJoCo scenes in bevy","language":"Rust","stars":30,"topics":["bevy","mujoco"],"license":null,"category":"game-templates","readme_excerpt":"Bevy MuJoCo https://user-images.githubusercontent.com/97428129/210613348-82a5e59d-96af-42a9-a94a-c47093eb8297.mp4 Import MJCF files into Bevy and run simulations with MuJoCo. Implementation Notes MuJoCo has 2 modes with different coordinate systems for bodies 1. paused mode where all translations and rotations are extracted from mj Model in MuJoCo-Rust as body.pos , body.quat in parent's body coordinate system. To make them work nice with bevy the body structure from mujoco has to be transformed to a tree structure with body tree() call. Then body tree is spawned into the bevy world recursively — a nice contraption to do it in setup mujoco . 2. simulation mode where translations are extracted from sim.xpos() and sim.xquat() — and this time they are in global frame. Since bodies are spawned hierarchically translations and rotations need to be converted to a parent coordinate system — it happens in simulate physics . Getting Started MuJoCo Dependency - MuJoCo 2.3.5 installed in /.local/mujoco for Linux or C:/Program Files/Mujoco for Windows - nightly Rust. Compile with cargo +nightly build Usage copy build.rs to root of your project to use in with Windows environments. it will copy mujoco.dll to a build dir of your application To run tests and example initialize mujoco menagerie submobule with See example for simulating Unitree A1 robot.","default_branch":null,"files":null,"tree":[],"storefront":"/r/stillonearth","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/stillonearth/bevy_mujoco/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}