From e1f18a747e596872b3e208a5da73ac8b5b30dc00 Mon Sep 17 00:00:00 2001 From: Kevin Sayed Date: Wed, 26 Feb 2025 12:07:06 -0800 Subject: [PATCH] Update dependencies and the changelog ahead of the 3.3.0 release. PiperOrigin-RevId: 731406295 Change-Id: I05027722a9681f71549b7e022dfe13fc381b8564 --- cmake/MujocoDependencies.cmake | 8 +-- doc/changelog.rst | 94 +++++++++++++++++----------------- python/mujoco/CMakeLists.txt | 4 +- 3 files changed, 53 insertions(+), 53 deletions(-) diff --git a/cmake/MujocoDependencies.cmake b/cmake/MujocoDependencies.cmake index 23e4e71e..004aedc4 100644 --- a/cmake/MujocoDependencies.cmake +++ b/cmake/MujocoDependencies.cmake @@ -39,22 +39,22 @@ set(MUJOCO_DEP_VERSION_qhull CACHE STRING "Version of `qhull` to be fetched." ) set(MUJOCO_DEP_VERSION_Eigen3 - 7f2377859377da6f22152015c28b12c04752af77 + 66f7f51b7e069d0a03a21157fa60b24aece69aeb CACHE STRING "Version of `Eigen3` to be fetched." ) set(MUJOCO_DEP_VERSION_abseil - 4447c7562e3bc702ade25105912dce503f0c4010 # LTS 20240722.0 + 9ac7062b1860d895fb5a8cbf58c3e9ef8f674b5f # LTS 20250127.0 CACHE STRING "Version of `abseil` to be fetched." ) set(MUJOCO_DEP_VERSION_gtest - b514bdc898e2951020cbdca1304b75f5950d1f59 # v1.15.2 + 6910c9d9165801d8827d628cb72eb7ea9dd538c5 # v1.16.0 CACHE STRING "Version of `gtest` to be fetched." ) set(MUJOCO_DEP_VERSION_benchmark - 24e0bd827a8bec8121b128b0634cb34402fb3259 # Incorporate fix for #1859 + 049f6e79cc3e8636cec21bbd94ed185b4a5f2653 CACHE STRING "Version of `benchmark` to be fetched." ) diff --git a/doc/changelog.rst b/doc/changelog.rst index 4dc07ba4..6664d819 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -2,8 +2,8 @@ Changelog ========= -Upcoming version (not yet released) ------------------------------------ +Version 3.3.0 (Feb 26, 2025) +---------------------------- Feature promotion @@ -13,26 +13,26 @@ Feature promotion :align: right :width: 240px -- Introduced a new kind of **fast deformable body**, activated by setting :ref:`flexcomp/dof` to - "trilinear". This type of :ref:`deformable` flex object has the same collision geometry as a regular - flex, but has far fewer degrees of freedom. Instead of 3 dofs per vertex, only the corners of the bounding box are - free to move, with the positions of the interior vertices computed with trilinear interpolation of the 8 corners, for - a total of 24 dofs for the entire flex object (or less, if some of the corners are pinned). This limits the types of - deformation achievable by the flex, but allows for much faster simulation. For example, see the video on the right - comparing `full `__ and `trilinear - `__ flexes for modeling - deformable gripper pads. +1. Introduced a new kind of **fast deformable body**, activated by setting :ref:`flexcomp/dof` to + "trilinear". This type of :ref:`deformable` flex object has the same collision geometry as a regular + flex, but has far fewer degrees of freedom. Instead of 3 dofs per vertex, only the corners of the bounding box are + free to move, with the positions of the interior vertices computed with trilinear interpolation of the 8 corners, for + a total of 24 dofs for the entire flex object (or less, if some of the corners are pinned). This limits the types of + deformation achievable by the flex, but allows for much faster simulation. For example, see the video on the right + comparing `full `__ and `trilinear + `__ flexes for modeling + deformable gripper pads. -- .. image:: images/computation/ccd_light.gif - :width: 20% - :align: right - :class: only-light +2. .. image:: images/computation/ccd_light.gif + :width: 20% + :align: right + :class: only-light - .. image:: images/computation/ccd_dark.gif - :width: 20% - :align: right - :class: only-dark + .. image:: images/computation/ccd_dark.gif + :width: 20% + :align: right + :class: only-dark The native convex collision detection pipeline introduced in 3.2.3 and enabled by the :ref:`nativeccd` flag, is now the default. See the section on @@ -42,47 +42,47 @@ Feature promotion General ^^^^^^^ -- Add support for custom plots in the MuJoCo viewer by exposing a ``viewport`` property, a ``set_figures`` method, - and a ``clear_figures`` method. -- Separate collision and deformation meshes for :ref:`flex`. This enables a fixed cost for the soft - body computations, while preserving the fidelity of high-resolution collisions. -- Added :ref:`potential` and :ref:`kinetic` energy sensors. -- Improved shadow rendering in the native renderer. -- Moved ``introspect`` to ``python/introspect``. +3. Add support for custom plots in the MuJoCo viewer by exposing a ``viewport`` property, a ``set_figures`` method, + and a ``clear_figures`` method. +4. Separate collision and deformation meshes for :ref:`flex`. This enables a fixed cost for the soft + body computations, while preserving the fidelity of high-resolution collisions. +5. Added :ref:`potential` and :ref:`kinetic` energy sensors. +6. Improved shadow rendering in the native renderer. +7. Moved ``introspect`` to ``python/introspect``. .. admonition:: Breaking API changes :class: attention - - As mentioned above, the native convex collision detection pipeline is now the default, which may break some - workflows. In this case, set :ref:`nativeccd` to "disable" to restore the old behavior. - - Added :ref:`mjs_setDeepCopy` API function. When the deep copy flag is 0, attaching a model will not copy it to the - parent, so the original references to the child can be used to modify the parent after attachment. The default - behavior is to perform such a shallow copy. The old behavior of creating a deep copy of the child model while - attaching can be restored by setting the deep copy flag to 1. - - Changes to inertia inference from meshes: + 8. As mentioned above, the native convex collision detection pipeline is now the default, which may break some + workflows. In this case, set :ref:`nativeccd` to "disable" to restore the old behavior. + 9. Added :ref:`mjs_setDeepCopy` API function. When the deep copy flag is 0, attaching a model will not copy it to the + parent, so the original references to the child can be used to modify the parent after attachment. The default + behavior is to perform such a shallow copy. The old behavior of creating a deep copy of the child model while + attaching can be restored by setting the deep copy flag to 1. + 10. Changes to inertia inference from meshes: - Previously, in order to specify that the mass lies on the surface, :ref:`geom/shellinertia` - could be used for any geom type. Now this attribute is ignored if the geom is a mesh; instead, inertia inference - for meshes is specified in the asset, using the :ref:`asset/mesh/inertia` attribute. + Previously, in order to specify that the mass lies on the surface, :ref:`geom/shellinertia` + could be used for any geom type. Now this attribute is ignored if the geom is a mesh; instead, inertia inference + for meshes is specified in the asset, using the :ref:`asset/mesh/inertia` attribute. - Previously, if the volumetric inertia computation failed (for example due to a very flat mesh), the compiler - would silently fall back to surface inertia computation. Now, the compiler will throw an informative error. - - Removed the composite type ``grid``. Users should instead use :ref:`flexcomp`. - - Removed the ``particle`` composite type. It is recommended to use the more generic :ref:`replicate` - instead, see for example `this model - `__. + Previously, if the volumetric inertia computation failed (for example due to a very flat mesh), the compiler + would silently fall back to surface inertia computation. Now, the compiler will throw an informative error. + 11. Removed the composite type ``grid``. Users should instead use :ref:`flexcomp`. + 12. Removed the ``particle`` composite type. It is recommended to use the more generic :ref:`replicate` + instead, see for example `this model + `__. MJX ^^^ -- Added support for spatial tendons with internal sphere and cylinder wrapping. -- Fix a bug with box-box collisions :github:issue:`2356`. +13. Added support for spatial tendons with internal sphere and cylinder wrapping. +14. Fix a bug with box-box collisions :github:issue:`2356`. Python bindings ^^^^^^^^^^^^^^^ -- Added a pedagogical colab notebook for ``mujoco.rollout``, a Python module for multithreaded simulation rollouts. - It is available here |rollout_colab|. - |br| Contribution by :github:user:`aftersomemath`. +15. Added a pedagogical colab notebook for ``mujoco.rollout``, a Python module for multithreaded simulation rollouts. + It is available here |rollout_colab|. + |br| Contribution by :github:user:`aftersomemath`. .. |rollout_colab| image:: https://colab.research.google.com/assets/colab-badge.svg :target: https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/python/rollout.ipynb diff --git a/python/mujoco/CMakeLists.txt b/python/mujoco/CMakeLists.txt index 6b204655..9277c049 100644 --- a/python/mujoco/CMakeLists.txt +++ b/python/mujoco/CMakeLists.txt @@ -140,7 +140,7 @@ findorfetch( GIT_REPO https://github.com/abseil/abseil-cpp GIT_TAG - 4447c7562e3bc702ade25105912dce503f0c4010 # LTS 20240722.0 + 9ac7062b1860d895fb5a8cbf58c3e9ef8f674b5f # LTS 20250127.0 TARGETS ${MUJOCO_PYTHON_ABSL_TARGETS} EXCLUDE_FROM_ALL @@ -173,7 +173,7 @@ findorfetch( GIT_REPO https://gitlab.com/libeigen/eigen GIT_TAG - 7f2377859377da6f22152015c28b12c04752af77 + 66f7f51b7e069d0a03a21157fa60b24aece69aeb TARGETS Eigen3::Eigen EXCLUDE_FROM_ALL