Skip to content
  • Yuke Zhu's avatar
    Release v1.4 (#362) · c57e2825
    Yuke Zhu authored
    # robosuite 1.4.0 Release Notes
    - Highlights
    - New Features
    - Improvements
    - Critical Bug Fixes
    - Other Bug Fixes
    
    # Highlights
    This release of robosuite refactors our backend to leverage DeepMind's new [mujoco](https://github.com/deepmind/mujoco) bindings. Below, we discuss the key details of this refactoring:
    
    ## Installation
    Now, installation has become much simpler, with mujoco being directly installed on Linux or Mac via `pip install mujoco`. Importing mujoco is now done via `import mujoco` instead of `import mujoco_py`
    
    ## Rendering
    The new DeepMind mujoco bindings do not ship with an onscreen renderer. As a result, we've implented an [OpenCV renderer](https://github.com/ARISE-Initiative/robosuite/blob/master/robosuite/utils/opencv_renderer.py), which provides most of the core functionality from the original mujoco renderer, but has a few limitations (most significantly, no glfw keyboard callbacks and no ability to move the free camera).
    
    # Improvements
    The following briefly describes other changes that improve on the pre-existing structure. This is not an exhaustive list, but a highlighted list of changes.
    
    - Standardize end-effector frame inference (#25). Now, all end-effector frames are correctly inferred from raw robot XMLs and take into account arbitrary relative orientations between robot arm link frames and gripper link frames.
    
    - Improved robot textures (#27). With added support from DeepMind's mujoco bindings for obj texture files, all robots are now natively rendered with more accurate texture maps.
    
    - Revamped macros (#30). Macros now references a single macro file that can be arbitrarily specified by the user.
    
    - Improved method for specifying GPU ID (#29). The new logic is as follows:
      1. If `render_device_gpu_id=-1`, `MUJOCO_EGL_DEVICE_ID` and `CUDA_VISIBLE_DEVICES` are not set, we either choose the first available device (usually `0`) if `macros.MUJOCO_GPU_RENDERING` is `True`, otherwise use CPU;
      2. `CUDA_VISIBLE_DEVICES` or `MUJOCO_EGL_DEVICE_ID` are set, we make sure that they dominate over programmatically defined GPU device id.
      3. If `CUDA_VISIBLE_DEVICES` and `MUJOCO_EGL_DEVICE_ID` are both set, then we use `MUJOCO_EGL_DEVICE_ID` and make sure it is defined in `CUDA_VISIBLE_DEVICES`
    
    - robosuite docs updated
    
    - Add new papers
    
    
    # Critical Bug Fixes
    - Fix Sawyer IK instability bug (#25)
    
    
    # Other Bug Fixes
    - Fix iGibson renderer bug (#21)
    
    
    -------
    
    ## Contributor Spotlight
    We would like to introduce the newest members of our robosuite core team, all of whom have contributed significantly to this release!
    @awesome-aj0123
    @snasiriany
    @zhuyifengzju
    c57e2825
This project is licensed under the Apache License 2.0. Learn more
Loading