Fix some changelog links
PiperOrigin-RevId: 948651115 Change-Id: Ibc915ddc71d884cee9f89eaa5dcaf498a833c57a
This commit is contained in:
committed by
Copybara-Service
parent
4787c8094c
commit
f841b67c17
+90
-90
@@ -126,7 +126,7 @@ General
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
10. :commit:`cd6db9eb` The header file ``mjthread.h`` was removed along with the old engine threading API.
|
||||
10. :commit:`b935d415` The header file ``mjthread.h`` was removed along with the old engine threading API.
|
||||
|br| **Migration:** Use :ref:`mju_threadpool` to set number of worker threads for the engine.
|
||||
11. :commit:`96bf8aea` Moved island sparse matrix construction from :ref:`mj_island` (single threaded) into
|
||||
:ref:`mj_fwdConstraint` (multi-threaded). The island-specific matrices ``iM, iLD, iefc_J`` were removed from
|
||||
@@ -259,10 +259,10 @@ General
|
||||
(nonzero :ref:`density<option-density>` or :ref:`viscosity<option-viscosity>`).
|
||||
Midpoint integration treats external forces as zero-order-hold constants, which causes
|
||||
energy gain in the presence of contacts and in fluid media.
|
||||
5. :commit:`68820957` Added :ref:`mjs_getOriginSpec`, returning the spec that originally defined an element, prior to
|
||||
5. :commit:`ec50260e` Added :ref:`mjs_getOriginSpec`, returning the spec that originally defined an element, prior to
|
||||
attachment. This is in contrast to :ref:`mjs_getSpec` which returns the spec currently owning the element. If the
|
||||
element is not the result of an attach operation, the functions are identical.
|
||||
6. :commit:`68820957` Added :ref:`mju_sym2dense`, converting a lower-triangular, implicitly symmetric CSR matrix to a
|
||||
6. :commit:`767c607f` Added :ref:`mju_sym2dense`, converting a lower-triangular, implicitly symmetric CSR matrix to a
|
||||
dense symmetric matrix. The inertia matrix ``mjData.M`` is an example of such a matrix.
|
||||
|
||||
.. admonition:: Future breaking API changes
|
||||
@@ -302,7 +302,7 @@ General
|
||||
2. :commit:`2f2d00da` Added :ref:`multi-cell support<body-flexcomp-cellcount>` for trilinear and quadratic flexes. Note
|
||||
that the implicit integrator uses a dense solver for the flex degrees of freedom, which can be slow for multi-cell
|
||||
flexes.
|
||||
3. :commit:`34d69ad4` Refactored ``strain`` flex :ref:`equality constraints<flexcomp-edge-equality>` to be instantiated
|
||||
3. :commit:`3d45a331` Refactored ``strain`` flex :ref:`equality constraints<flexcomp-edge-equality>` to be instantiated
|
||||
per cell instead of per flex object, reducing the number of degrees of freedom per constraint row. The equality can
|
||||
be associated with a specific cell with the new attribute :ref:`cell <equality-flexstrain-cell>`
|
||||
4. :commit:`33259718` Added new :ref:`mj_maxContact<mj_maxContact>` function to get the maximum number of possible
|
||||
@@ -313,7 +313,7 @@ General
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
6. :commit:`34d69ad4` The :ref:`multiccd<coMultiCCD>` option (multiple contacts returned from the convex collision
|
||||
6. :commit:`6cb6e5a9` The :ref:`multiccd<coMultiCCD>` option (multiple contacts returned from the convex collision
|
||||
detection pipeline) is now enabled by default. The new implementation (as opposed to the legacy pipeline) has
|
||||
little performance overhead and improves stability.
|
||||
|
||||
@@ -365,7 +365,7 @@ General
|
||||
for :ref:`connect<equality-connect>` and :ref:`weld<equality-weld>` equality constaints. This significantly improves
|
||||
the stability of constrained mechanisms like four-bar linkages. See :ref:`Dual problem<soDual>` for details.
|
||||
|
||||
6. :commit:`0c337799` Introduced :ref:`mjpEncoder`, the counterpart to :ref:`mjpDecoder` for encoding of :ref:`mjSpec`
|
||||
6. :commit:`f5d3ce34` Introduced :ref:`mjpEncoder`, the counterpart to :ref:`mjpDecoder` for encoding of :ref:`mjSpec`
|
||||
and :ref:`mjModel` into :ref:`mjResource`.
|
||||
|
||||
7. :commit:`f5d3ce34` Added :ref:`mj_encode`, :ref:`mjp_registerEncoder`, :ref:`mjp_defaultEncoder`, and
|
||||
@@ -406,7 +406,7 @@ General
|
||||
Bug fixes
|
||||
^^^^^^^^^
|
||||
|
||||
14. :commit:`efae9157` The compiler now correctly accounts for negative scaling when loading user specified mesh data.
|
||||
14. :commit:`ecc22667` The compiler now correctly accounts for negative scaling when loading user specified mesh data.
|
||||
|
||||
Version 3.6.0 (March 10, 2026)
|
||||
------------------------------
|
||||
@@ -417,7 +417,7 @@ General
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
1. :commit:`1370a540` The tendon Jacobian ``ten_J`` is now always sparse. The fields ``ten_J_rownnz``,
|
||||
1. :commit:`9efe41c0` The tendon Jacobian ``ten_J`` is now always sparse. The fields ``ten_J_rownnz``,
|
||||
``ten_J_rowadr``, and ``ten_J_colind`` have been moved from :ref:`mjData` to :ref:`mjModel` and are no longer
|
||||
computed at run time by ``mj_tendon`` but at compile time.
|
||||
|
||||
@@ -427,15 +427,15 @@ General
|
||||
3. :commit:`713b5524` Added a new ``strain`` :ref:`equality constraint<flexcomp-edge-equality>` type for trilinear and
|
||||
quadratic :ref:`dofs<body-flexcomp-dof>`.
|
||||
4. :commit:`bf74d01d` Flexes now support collisions with SDF geoms.
|
||||
5. :commit:`3cada28b` Improved memory requirements for ``ten_J`` and ``ten_J_colind`` by reducing the upper bound for
|
||||
5. :commit:`5903d482` Improved memory requirements for ``ten_J`` and ``ten_J_colind`` by reducing the upper bound for
|
||||
the number of non-zeros ``nJten``.
|
||||
6. :commit:`1370a540` Improved memory requirements for ``actuator_moment`` and ``moment_colind`` by reducing the upper
|
||||
6. :commit:`37e993f6` Improved memory requirements for ``actuator_moment`` and ``moment_colind`` by reducing the upper
|
||||
bound for the number of non-zeros ``nJmom``.
|
||||
|
||||
MJX
|
||||
^^^
|
||||
|
||||
7. :commit:`3cada28b` Add batch rendering support for MJX-Warp. See the
|
||||
7. :commit:`62a32386` Add batch rendering support for MJX-Warp. See the
|
||||
:ref:`MJX-Warp batch rendering<MjxWarpBatchRendering>` section for details.
|
||||
|
||||
Bug fixes
|
||||
@@ -450,8 +450,8 @@ Version 3.5.0 (February 12, 2026)
|
||||
Significant new features
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
1. :commit:`54b8b68b` :doc:`MuJoCo Warp <mjwarp/index>` is now officially released.
|
||||
2. :commit:`54b8b68b` Added a new **System Identification** toolbox (Python), see
|
||||
1. :commit:`b64b527e` :doc:`MuJoCo Warp <mjwarp/index>` is now officially released.
|
||||
2. :commit:`146a5c08` Added a new **System Identification** toolbox (Python), see
|
||||
`README <https://github.com/google-deepmind/mujoco/blob/main/python/mujoco/sysid/README.md>`__ for details.
|
||||
|br| A Colab notebook demonstrating the toolbox is available here: |sysid_colab|
|
||||
|br| Contribution by :github:user:`kevinzakka`, :github:user:`aftersomemath`, :github:user:`jonathanembleyriches`,
|
||||
@@ -461,7 +461,7 @@ Significant new features
|
||||
:target: https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/python/mujoco/sysid/sysid.ipynb
|
||||
|
||||
|
||||
3. :commit:`54b8b68b` Actuators and sensors now support arbitrary delays via history buffers, and sensor values can be
|
||||
3. :commit:`6419534b` Actuators and sensors now support arbitrary delays via history buffers, and sensor values can be
|
||||
computed at intervals larger than the simulation timestep. Using a delay or interval introduces a new
|
||||
``mjData.history`` variable to the :ref:`Physics state<siPhysicsState>`. See :ref:`Delays<CDelay>` for details.
|
||||
|
||||
@@ -484,7 +484,7 @@ Significant new features
|
||||
:align: right
|
||||
:target: https://github.com/google-deepmind/mujoco/blob/main/test/engine/testdata/sensor/rfcamera.xml
|
||||
|
||||
6. :commit:`54b8b68b` Rangefinder sensors can now be attached to a camera using the
|
||||
6. :commit:`9d646e65` Rangefinder sensors can now be attached to a camera using the
|
||||
:ref:`rangefinder/camera<sensor-rangefinder-camera>` attribute. In this case, the sensor respects the
|
||||
:ref:`camera/resolution<body-camera-resolution>` attribute and casts multiple rays, one for each pixel.
|
||||
7. :commit:`ed15493a` :ref:`Rangefinders<sensor-rangefinder>` can now report various kinds of information besides ray
|
||||
@@ -502,7 +502,7 @@ General
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
8. :commit:`54b8b68b` Ray-cast functions now optionally compute the surface normal at the ray intersection. This is a
|
||||
8. :commit:`218226fc` Ray-cast functions now optionally compute the surface normal at the ray intersection. This is a
|
||||
breaking change due to the addition of the ``mjtNum normal[3]`` argument. The modified functions are
|
||||
:ref:`mj_ray`, :ref:`mj_multiRay`, :ref:`mju_rayGeom`, :ref:`mj_rayFlex`, :ref:`mj_rayHfield` and
|
||||
:ref:`mj_rayMesh`.
|
||||
@@ -513,7 +513,7 @@ General
|
||||
9. :commit:`218226fc` ``mju_rayFlex`` has been renamed to :ref:`mj_rayFlex` for consistency with other functions that
|
||||
take ``mjModel*`` and ``mjData*`` arguments.
|
||||
|
||||
10. :commit:`54b8b68b` The ``mjModel.cam_orthographic`` field has been renamed to ``cam_projection``, with the
|
||||
10. :commit:`b8a4ac5d` The ``mjModel.cam_orthographic`` field has been renamed to ``cam_projection``, with the
|
||||
semantic of a new enum type :ref:`mjtProjection`. This will allow for more projection types in the future like
|
||||
fisheye cameras. Relatedly, the ``camera/orthographic`` MJCF attribute for cameras has been renamed to
|
||||
:ref:`camera/projection<body-camera-projection>` and now accepts the values ``orthographic`` and ``perspective``.
|
||||
@@ -523,7 +523,7 @@ General
|
||||
|
||||
11. :commit:`cb9a9c15` Removed ``getdir`` from the ``mjpResourceProvider`` struct. All Resource Providers now use the
|
||||
same shared implementation.
|
||||
12. :commit:`54b8b68b` When combining the ``margin`` or ``gap`` :ref:`parameters<CContact>` of two geoms to obtain
|
||||
12. :commit:`6af0d4c8` When combining the ``margin`` or ``gap`` :ref:`parameters<CContact>` of two geoms to obtain
|
||||
the parameters of a contact, the respective values are now **summed** rather than taking the maximum. This allows
|
||||
geom margins to be a proper "inflation" of the geom.
|
||||
|
||||
@@ -533,7 +533,7 @@ General
|
||||
14. :commit:`608115ab` Cameras now have an :ref:`output<body-camera-output>` attribute, parsed into the
|
||||
``mjModel.cam_output`` bitfield. Unused by the renderer, it serves as a convenient location to store a camera's
|
||||
supported output types.
|
||||
15. :commit:`54b8b68b` Added :ref:`mj_mountVFS` and :ref:`mj_unmountVFS` functions for mounting a custom VFS provider.
|
||||
15. :commit:`37762e3f` Added :ref:`mj_mountVFS` and :ref:`mj_unmountVFS` functions for mounting a custom VFS provider.
|
||||
Mounting allows providers to be used to open/read/close resources dynamically at arbitrary paths.
|
||||
16. :commit:`1d2d0b1c` The optimization whereby sequential :ref:`collision sensors<collision-sensors>` with identical
|
||||
attributes shared computation has been removed. This results in a (likely minor) performance regression for models
|
||||
@@ -571,7 +571,7 @@ Documentation
|
||||
has been expanded.
|
||||
22. :commit:`c5925e7b` The usability of the :ref:`MJCF schema<CSchema>` is improved with a collapsible dropdown menu
|
||||
with links to elements and attributes.
|
||||
23. :commit:`54b8b68b` MuJoCo version numbering is now based on Semantic Versioning, see
|
||||
23. :commit:`c54f1fe3` MuJoCo version numbering is now based on Semantic Versioning, see
|
||||
`VERSIONING.md <https://github.com/google-deepmind/mujoco/blob/main/VERSIONING.md>`__.
|
||||
|
||||
|
||||
@@ -581,10 +581,10 @@ Bug fixes
|
||||
derivatives were incorrectly computed when the force was clamped by :ref:`forcerange<actuator-general-forcerange>`.
|
||||
25. :commit:`7f74487a` Fixed a bug in :ref:`implicit integrator<geIntegrators>` derivatives where actuator velocity
|
||||
derivatives did not account for the :ref:`actearly<actuator-general-actearly>` flag.
|
||||
26. :commit:`54b8b68b` Multi-threaded mesh processing, enabled by the :ref:`usethread<compiler-usethread>` compiler flag
|
||||
26. :commit:`64a2345c` Multi-threaded mesh processing, enabled by the :ref:`usethread<compiler-usethread>` compiler flag
|
||||
(on by default), was in fact disabled by the flag. Fixing this bug speeds up compilation of mesh-heavy models by (up
|
||||
to) the number of available cores.
|
||||
27. :commit:`218226fc` The ``vertid`` argument of :ref:`mj_rayFlex` and :ref:`mju_raySkin` was marked as nullable but
|
||||
27. :commit:`223ba99e` The ``vertid`` argument of :ref:`mj_rayFlex` and :ref:`mju_raySkin` was marked as nullable but
|
||||
was not; it is now nullable.
|
||||
28. :commit:`c1b3b306` Fixed :ref:`gravcomp<body-gravcomp>` being ignored for bodies with no joints nested inside
|
||||
jointed parent bodies (:issue:`3066`, reported by :github:user:`Alex108306`).
|
||||
@@ -655,7 +655,7 @@ General
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
1. :commit:`f7708954` The mjSpec C API fields :ref:`meshdir<compiler-meshdir>` and
|
||||
1. :commit:`77e025ea` The mjSpec C API fields :ref:`meshdir<compiler-meshdir>` and
|
||||
:ref:`texturedir<compiler-texturedir>` have been moved to
|
||||
`compiler.meshdir <https://github.com/google-deepmind/mujoco/blob/0baac589993220095cf09e153f194f35ca0f0738/include/mujoco/mjspec.h#L154>`__
|
||||
and
|
||||
@@ -674,11 +674,11 @@ General
|
||||
existing color with :ref:`visual/rgba/constraint<visual-rgba-constraint>`. For spatial tendons, this visualization
|
||||
aid is active only if no :ref:`material<tendon-spatial-material>` is set and :ref:`rgba<tendon-spatial-rgba>` is
|
||||
default.
|
||||
5. :commit:`e4704cd2` Added :ref:`mju_getXMLDependencies` for computing a list of unique asset dependencies from an MJCF
|
||||
5. :commit:`6320b959` Added :ref:`mju_getXMLDependencies` for computing a list of unique asset dependencies from an MJCF
|
||||
file.
|
||||
6. :commit:`e4704cd2` Added the code sample ``dependencies`` which provides command line utility for printing the result
|
||||
of :ref:`mju_getXMLDependencies`.
|
||||
7. :commit:`f7708954` The minimum C++ standard required to compile MuJoCo is now C++20, this has been the case within
|
||||
7. :commit:`bd68f0c6` The minimum C++ standard required to compile MuJoCo is now C++20, this has been the case within
|
||||
Google since 2023 but the CMake update was forgotten.
|
||||
|
||||
.. admonition:: Breaking ABI changes
|
||||
@@ -691,7 +691,7 @@ General
|
||||
MJX
|
||||
^^^
|
||||
10. :commit:`6ae9cc80` Fix :issue:`2508`, ``qLD`` shapes mismatched mjModel during ``get_data_into``.
|
||||
11. :commit:`f7708954` Pull in MuJoCo Warp update to ``io.py``, and use ``naconmax`` instead of ``nconmax`` to set the
|
||||
11. :commit:`b56cf98e` Pull in MuJoCo Warp update to ``io.py``, and use ``naconmax`` instead of ``nconmax`` to set the
|
||||
maximum number of contacts over all environments.
|
||||
|
||||
Bug fixes
|
||||
@@ -760,12 +760,12 @@ General
|
||||
|
||||
MJX
|
||||
^^^
|
||||
10. :commit:`d7e925bd` Promote ``ten_length`` to the public MJX API. Add Warp support for ``mjx.tendon``.
|
||||
10. :commit:`1763fa53` Promote ``ten_length`` to the public MJX API. Add Warp support for ``mjx.tendon``.
|
||||
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
11. :commit:`d7e925bd` ``ten_length`` was moved from ``mjx.Data._impl.ten_length`` to a public field
|
||||
11. :commit:`1763fa53` ``ten_length`` was moved from ``mjx.Data._impl.ten_length`` to a public field
|
||||
``mjx.Data.ten_length``.
|
||||
|
||||
Bug fixes
|
||||
@@ -781,7 +781,7 @@ General
|
||||
^^^^^^^
|
||||
1. :commit:`e6c57159` Added the :ref:`insidesite<sensor-insidesite>` sensor, for checking if an object is inside the
|
||||
volume of a site. It is useful for triggering events in surrounding environment logic.
|
||||
2. :commit:`3152458a` Added the :ref:`contact<sensor-contact>` sensor, for reporting contact information according to
|
||||
2. :commit:`d0e4771c` Added the :ref:`contact<sensor-contact>` sensor, for reporting contact information according to
|
||||
user-defined criteria.
|
||||
The purpose of the :el:`contact` sensor is to report contact-related information in a fixed-size array. This is
|
||||
useful as input to learning-based agents and in environment logic.
|
||||
@@ -805,7 +805,7 @@ General
|
||||
|
||||
Bug fixes
|
||||
^^^^^^^^^
|
||||
9. :commit:`3152458a` Fixed a bug that caused object lists in the child to have missing elements after attaching an
|
||||
9. :commit:`6e7aaacb` Fixed a bug that caused object lists in the child to have missing elements after attaching an
|
||||
mjSpec. This was caused by adding to the lists only the objects that belong to the tree of the requested body, but
|
||||
this causes to skip objects that were attached, since they belong to the tree of the parent.
|
||||
10. :commit:`3434f5d9` Fixed a bug where the convex hull of a collision mesh was not being computed if the mesh could
|
||||
@@ -880,7 +880,7 @@ General
|
||||
|
||||
**Migration:** Replace light/directional="false/true" with light/type="spot/directional", respectively.
|
||||
|
||||
4. :commit:`7548d370` Added :ref:`mjtColorSpace` enum and associated :ref:`colorspace<asset-texture-colorspace>`
|
||||
4. :commit:`3e9bc79b` Added :ref:`mjtColorSpace` enum and associated :ref:`colorspace<asset-texture-colorspace>`
|
||||
attribute that allows to specify the color space of textures (either linear or
|
||||
`sRGB <https://en.wikipedia.org/wiki/SRGB>`__). Since this property is now read correctly from PNG files, textures
|
||||
files which use sRGB will now be rendered differently.
|
||||
@@ -943,7 +943,7 @@ General
|
||||
length.
|
||||
4. :commit:`f96f3e1c` Added the :ref:`compiler/saveinertial<compiler-saveinertial>` flag, writing explicit inertial
|
||||
clauses for all bodies when saving to XML.
|
||||
5. :commit:`f96f3e1c` Added :ref:`orientation<body-composite-quat>` attribute to :ref:`composite<body-composite>`.
|
||||
5. :commit:`e8c67ca5` Added :ref:`orientation<body-composite-quat>` attribute to :ref:`composite<body-composite>`.
|
||||
Moreover, allow the composite to be the direct child of a frame.
|
||||
6. :commit:`96dda6ea` Added :ref:`tendon actuator force limits<tendon-spatial-actuatorfrclimited>` and
|
||||
:ref:`tendon actuator force sensor<sensor-tendonactuatorfrc>`.
|
||||
@@ -958,7 +958,7 @@ Bug fixes
|
||||
which the Jacobian is computed, now fixed.
|
||||
9. :commit:`1bf24e9f` Fixed a bug that caused the parent frame of elements in the child worldbody to be incorrectly set
|
||||
when attaching an mjSpec to a frame or a site.
|
||||
10. :commit:`006c18b1` Fixed a bug that caused shadow rendering to flicker on platforms (e.g., MacOS) that do not
|
||||
10. :commit:`40393f46` Fixed a bug that caused shadow rendering to flicker on platforms (e.g., MacOS) that do not
|
||||
support ARB_clip_control. Fixed in collaboration with :github:user:`aftersomemath`.
|
||||
|
||||
Python bindings
|
||||
@@ -970,7 +970,7 @@ Python bindings
|
||||
:width: 240px
|
||||
|
||||
11. :commit:`16e49f27` Added examples of procedural model creation to the Model Editing tutorial: |mjspec_colab|
|
||||
12. :commit:`006c18b1` Added support for nameless :ref:`mjSpec` objects in the ``bind`` method, see the corresponding
|
||||
12. :commit:`ebd30493` Added support for nameless :ref:`mjSpec` objects in the ``bind`` method, see the corresponding
|
||||
:ref:`section<PyMJCF>` in the documentation.
|
||||
|
||||
.. |mjspec_colab| image:: https://colab.research.google.com/assets/colab-badge.png
|
||||
@@ -1030,7 +1030,7 @@ General
|
||||
8. :commit:`ed16f2da` As mentioned above, the native convex collision detection pipeline is now the default, which
|
||||
may break some workflows. In this case, set :ref:`nativeccd<option-flag-nativeccd>` to "disable" to restore the
|
||||
old behavior.
|
||||
9. :commit:`240a7afd` Added :ref:`mjs_setDeepCopy` API function. When the deep copy flag is 0, attaching a model will
|
||||
9. :commit:`c2138c3f` 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.
|
||||
@@ -1108,16 +1108,16 @@ MJX
|
||||
Python bindings
|
||||
^^^^^^^^^^^^^^^
|
||||
3. :commit:`74dcd51d` Provide prebuilt wheels for Python 3.13.
|
||||
4. :commit:`ec9986dc` Added ``bind`` method and removed id attribute from :ref:`mjSpec` objects. Using ids is error
|
||||
4. :commit:`3a12db9a` Added ``bind`` method and removed id attribute from :ref:`mjSpec` objects. Using ids is error
|
||||
prone in scenarios of repeated attachment and detachment. Python users are encouraged to use names for unique
|
||||
identification of model elements.
|
||||
5. :commit:`ec9986dc` :ref:`rollout<PyRollout>` can now accept sequences of MjModel of length ``nroll``. Also removed
|
||||
5. :commit:`943eb6bc` :ref:`rollout<PyRollout>` can now accept sequences of MjModel of length ``nroll``. Also removed
|
||||
the ``nroll`` argument because its value can always be inferred.
|
||||
|
||||
Bug fixes
|
||||
^^^^^^^^^
|
||||
6. :commit:`f9569cda` Fixed :issue:`2212`, type error in ``mjx.get_data``.
|
||||
7. :commit:`ec9986dc` Fixed bug introduced in 3.2.0 in handling of :ref:`texrepeat<asset-material-texrepeat>` attribute,
|
||||
7. :commit:`5c23ae11` Fixed bug introduced in 3.2.0 in handling of :ref:`texrepeat<asset-material-texrepeat>` attribute,
|
||||
was mistakenly cast from ``float`` to ``int``, (fixed :issue:`2223`).
|
||||
|
||||
Version 3.2.5 (Nov 4, 2024)
|
||||
@@ -1139,7 +1139,7 @@ General
|
||||
4. :commit:`7dc8aef8` The not-useful ``convexhull`` compiler option (to disable computation of mesh convex hulls) has
|
||||
been removed.
|
||||
5. :commit:`d8494fef` Removed the deprecated ``mju_rotVecMat``, ``mju_rotVecMatT`` and ``mjv_makeConnector`` functions.
|
||||
6. :commit:`61cb552f` Sorting now uses a faster, native sort function (fixes :issue:`1638`).
|
||||
6. :commit:`2b0629d7` Sorting now uses a faster, native sort function (fixes :issue:`1638`).
|
||||
7. :commit:`61cb552f` The PBR texture layers introduced in 3.2.1 were refactored from separate sub-elements to a single
|
||||
:ref:`layer<material-layer>` sub-element.
|
||||
8. :commit:`831d9881` The composite types box, cylinder, and sphere have been removed. Users should instead use the
|
||||
@@ -1250,7 +1250,7 @@ General
|
||||
( ``mjModel.site_quat``) at runtime will correctly modify the constraint definition. This
|
||||
`example model <https://github.com/google-deepmind/mujoco/blob/main/test/engine/testdata/equality_site.xml>`__ using
|
||||
the new semantic is shown in the video on the right.
|
||||
6. :commit:`577afd1e` Introduced **free joint alignment**, an optimization that applies to bodies with a free joint and
|
||||
6. :commit:`8954a088` Introduced **free joint alignment**, an optimization that applies to bodies with a free joint and
|
||||
no child bodies (simple free-floating bodies): automatically aligning the body frame with the inertial frame. This
|
||||
feature can be toggled individually using the :ref:`freejoint/align<body-freejoint-align>` attribute or globally
|
||||
using the compiler :ref:`alignfree<compiler-alignfree>` attribute. The alignment diagonalizes the related 6x6 inertia
|
||||
@@ -1261,9 +1261,9 @@ General
|
||||
become invalid. The global compiler attribute currently defaults to "false" due to this potential breakage, but could
|
||||
be changed to "true" in a future release. Aligned free joints are recommended for all new models.
|
||||
|
||||
7. :commit:`577afd1e` Added an :ref:`mjSpec` option for creating a texture directly from a buffer.
|
||||
8. :commit:`577afd1e` :ref:`shell (surface) inertia <body-geom-shellinertia>` is now supported by all geom types.
|
||||
9. :commit:`8b03daa0` When :ref:`attaching<meAttachment>` sub-models, :ref:`keyframes<keyframe>` will now be correctly
|
||||
7. :commit:`851bb6ee` Added an :ref:`mjSpec` option for creating a texture directly from a buffer.
|
||||
8. :commit:`466368ef` :ref:`shell (surface) inertia <body-geom-shellinertia>` is now supported by all geom types.
|
||||
9. :commit:`afd7c73f` When :ref:`attaching<meAttachment>` sub-models, :ref:`keyframes<keyframe>` will now be correctly
|
||||
merged into the parent model, but only on the first attachment.
|
||||
10. :commit:`8b03daa0` Added the :ref:`mjtSameFrame` enum which contains the possible frame alignments of bodies and
|
||||
their children. These alignments are used for computation shortcuts in :ref:`mj_kinematics`.
|
||||
@@ -1291,7 +1291,7 @@ MJX
|
||||
|
||||
Bug fixes
|
||||
^^^^^^^^^
|
||||
23. :commit:`0bcaa856` Fixed a performance regression introduced in 3.1.7 in mesh Bounding Volume Hierarchies
|
||||
23. :commit:`39896f80` Fixed a performance regression introduced in 3.1.7 in mesh Bounding Volume Hierarchies
|
||||
(:issue:`1875`, contribution by :github:user:`michael-ahn`).
|
||||
24. :commit:`0bcaa856` Fixed a bug wherein, for models that have both muscles and stateless actuators and used one of
|
||||
the implicit integrators, wrong derivatives would be computed.
|
||||
@@ -1365,7 +1365,7 @@ General
|
||||
.. admonition:: Breaking API changes
|
||||
:class: attention
|
||||
|
||||
2. :commit:`57e6760e` Removed deprecated ``mj_makeEmptyFileVFS`` and ``mj_findFileVFS`` functions. The constants
|
||||
2. :commit:`e66b9a36` Removed deprecated ``mj_makeEmptyFileVFS`` and ``mj_findFileVFS`` functions. The constants
|
||||
``mjMAXVFS`` and ``mjMAXVFSNAME`` are also removed as they are no longer needed.
|
||||
|
||||
**Migration:** Use :ref:`mj_addBufferVFS` to copy a buffer into a VFS file directly.
|
||||
@@ -1382,7 +1382,7 @@ General
|
||||
happened when keyframes were used in a model with stateful actuator plugins. The PID plugin will give an error
|
||||
when the wrong value of actdim is provided.
|
||||
|
||||
6. :commit:`e13ddfa2` Added :ref:`attach<body-attach>` meta-element to MJCF, which allows :ref:`attaching<meAttachment>`
|
||||
6. :commit:`27b9ddda` Added :ref:`attach<body-attach>` meta-element to MJCF, which allows :ref:`attaching<meAttachment>`
|
||||
a subtree from a different model to a body in the current model.
|
||||
7. :commit:`57e6760e` The :ref:`VFS<Virtualfilesystem>` implementation has been rewritten in C++ and is now considerably
|
||||
more efficient in speed and memory footprint.
|
||||
@@ -1398,7 +1398,7 @@ General
|
||||
9. :commit:`ace0c8f0` Added :ref:`maxhullvert<asset-mesh-maxhullvert>`, the maximum number of vertices in a mesh's
|
||||
convex hull.
|
||||
10. :commit:`c9bcf837` Added :ref:`mj_setKeyframe` for saving the current state into a model keyframe.
|
||||
11. :commit:`c9bcf837` Added support for ``ball`` joints in the URDF parser ("spherical" in URDF).
|
||||
11. :commit:`5ed464b4` Added support for ``ball`` joints in the URDF parser ("spherical" in URDF).
|
||||
12. :commit:`3f3b39bb` Replaced ``mjUSEDOUBLE`` which was previously hard-coded in
|
||||
`mjtnum.h <https://github.com/google-deepmind/mujoco/blob/3577e2cf8bf841475b489aefff52276a39f24d51/include/mjtnum.h>`__
|
||||
with the build-time flag ``mjUSESINGLE``. If this symbol is not defined, MuJoCo will use double-precision floating
|
||||
@@ -1426,7 +1426,7 @@ MJX
|
||||
Simulate
|
||||
^^^^^^^^
|
||||
18. :commit:`1eb70864` Added improved tutorial video.
|
||||
19. :commit:`1eb70864` Improved the Brownian noise generator.
|
||||
19. :commit:`f37f8408` Improved the Brownian noise generator.
|
||||
20. :commit:`3d1d1d07` Now displaying model load times if they are longer than 0.25 seconds.
|
||||
|
||||
Python bindings
|
||||
@@ -1515,9 +1515,9 @@ MJX
|
||||
``mjx.device_put``.
|
||||
|
||||
8. :commit:`0cd28d24` Added cylinder plane collisions.
|
||||
9. :commit:`a4df9120` Added ``efc_type`` to ``mjx.Data`` and ``dim``, ``efc_address`` to ``mjx.Contact``.
|
||||
10. :commit:`a4df9120` Added ``geom`` to ``mjx.Contact`` and marked ``geom1``, ``geom2`` deprecated.
|
||||
11. :commit:`a4df9120` Added ``ne``, ``nf``, ``nl``, ``nefc``, and ``ncon`` to ``mjx.Data`` to match ``mujoco.MjData``.
|
||||
9. :commit:`71333938` Added ``efc_type`` to ``mjx.Data`` and ``dim``, ``efc_address`` to ``mjx.Contact``.
|
||||
10. :commit:`71333938` Added ``geom`` to ``mjx.Contact`` and marked ``geom1``, ``geom2`` deprecated.
|
||||
11. :commit:`3b64217b` Added ``ne``, ``nf``, ``nl``, ``nefc``, and ``ncon`` to ``mjx.Data`` to match ``mujoco.MjData``.
|
||||
12. :commit:`a4df9120` Given the above added fields, removed ``mjx.get_params``, ``mjx.ncon``, and
|
||||
``mjx.count_constraints``.
|
||||
13. :commit:`a4df9120` Changed the way meshes are organized on device to speed up collision detection when a mesh is
|
||||
@@ -1672,8 +1672,8 @@ General
|
||||
|
||||
MJX
|
||||
^^^
|
||||
5. :commit:`63ec34f9` Added :ref:`dyntype<actuator-general-dyntype>` ``filterexact``.
|
||||
6. :commit:`63ec34f9` Added :at:`site` transmission.
|
||||
5. :commit:`80f50c94` Added :ref:`dyntype<actuator-general-dyntype>` ``filterexact``.
|
||||
6. :commit:`8ce2c920` Added :at:`site` transmission.
|
||||
7. :commit:`feb92bf5` Updated MJX colab tutorial with more stable quadruped environment.
|
||||
8. :commit:`a02fc405` Added ``mjx.ray`` which mirrors :ref:`mj_ray` for planes, spheres, capsules, boxes, and meshes.
|
||||
9. :commit:`0a7be173` Added ``mjx.is_sparse`` which mirrors :ref:`mj_isSparse` and ``mjx.full_m`` which mirrors
|
||||
@@ -1707,11 +1707,11 @@ Bug fixes
|
||||
^^^^^^^^^
|
||||
1. :commit:`d39ed1d3` Fixed a bug (introduced in 3.1.0) where box-box collisions produced no contacts if one box was
|
||||
deeply embedded in the other.
|
||||
2. :commit:`d39ed1d3` Fixed a bug in :ref:`simulate<saSimulate>` where the "LOADING..." message was not showing
|
||||
2. :commit:`dc0d0c59` Fixed a bug in :ref:`simulate<saSimulate>` where the "LOADING..." message was not showing
|
||||
correctly.
|
||||
3. :commit:`d39ed1d3` Fixed a crash in the Python :ref:`passive viewer<PyViewerPassive>`, when used with models
|
||||
containing Flex objects.
|
||||
4. :commit:`d39ed1d3` Fixed a bug in MJX where ``site_xmat`` was ignored in ``get_data`` and ``put_data``
|
||||
4. :commit:`0915d69c` Fixed a bug in MJX where ``site_xmat`` was ignored in ``get_data`` and ``put_data``
|
||||
5. :commit:`d39ed1d3` Fixed a bug in MJX where ``efc_address`` was sometimes incorrectly calculated in ``get_data``.
|
||||
|
||||
|
||||
@@ -1750,7 +1750,7 @@ Bug fixes
|
||||
^^^^^^^^^
|
||||
8. :commit:`cd56a41f` Fix bug in Cartesian actuation with movable refsite, as when using body-centric Cartesian
|
||||
actuators on a quadruped. Before this fix such actuators could lead to non-conservation of momentum.
|
||||
9. :commit:`d39ed1d3` Fix bug that prevented using flex with :ref:`simulate<saSimulate>`.
|
||||
9. :commit:`cd56a41f` Fix bug that prevented using flex with :ref:`simulate<saSimulate>`.
|
||||
10. :commit:`7d8d4d39` Fix bug that prevented the use of elasticity plugins in combination with pinned flex vertices.
|
||||
11. :commit:`3c05f9fa` Release Python wheels targeting macOS 10.16 to support x86_64 systems where
|
||||
``SYSTEM_VERSION_COMPAT`` is set. The minimum supported version is still 11.0, but we release these wheels to fix
|
||||
@@ -1820,7 +1820,7 @@ MJX
|
||||
Python bindings
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
10. :commit:`893c4042` Fix the macOS ``mjpython`` launcher to work with the Python interpreter from Apple Command Line
|
||||
10. :commit:`4c24be9e` Fix the macOS ``mjpython`` launcher to work with the Python interpreter from Apple Command Line
|
||||
Tools.
|
||||
11. :commit:`084facc9` Fixed a crash when copying instances of ``mujoco.MjData`` for models that use plugins. Introduced
|
||||
a ``model`` attribute to ``MjData`` which is reference to the model that was used to create that ``MjData``
|
||||
@@ -1904,7 +1904,7 @@ New features
|
||||
:align: right
|
||||
:width: 240px
|
||||
|
||||
4. :commit:`2cc12054` Added constraint island discovery with :ref:`mj_island`. Constraint islands are disjoint sets of
|
||||
4. :commit:`3e034e38` Added constraint island discovery with :ref:`mj_island`. Constraint islands are disjoint sets of
|
||||
constraints and degrees-of-freedom that do not interact. The only solver which currently supports islands is
|
||||
:ref:`CG<option-solver>`. Island discovery can be activated using a new :ref:`enable flag<option-flag-island>`.
|
||||
If island discovery is enabled, geoms, contacts and tendons will be colored according to the corresponding island,
|
||||
@@ -1997,7 +1997,7 @@ General
|
||||
20. :commit:`1a3215e3` Added :ref:`ls_iterations<option-ls_iterations>` and :ref:`ls_tolerance<option-ls_tolerance>`
|
||||
options for adjusting linesearch stopping criteria in CG and Newton solvers. These can be useful for performance
|
||||
tuning.
|
||||
21. :commit:`2cc12054` Added ``mesh_pos`` and ``mesh_quat`` fields to :ref:`mjModel` to store the normalizing
|
||||
21. :commit:`ccda87aa` Added ``mesh_pos`` and ``mesh_quat`` fields to :ref:`mjModel` to store the normalizing
|
||||
transformation applied to mesh assets. Fixes :issue:`409`.
|
||||
22. :commit:`8064ad59` Added camera :ref:`resolution<body-camera-resolution>` attribute and
|
||||
:ref:`camprojection<sensor-camprojection>` sensor. If camera resolution is set to positive values, the camera
|
||||
@@ -2061,7 +2061,7 @@ Documentation
|
||||
Bug fixes
|
||||
^^^^^^^^^
|
||||
|
||||
33. :commit:`2cc12054` Fixed a bug that was causing :ref:`geom margin<body-geom-margin>` to be ignored during the
|
||||
33. :commit:`b0077e40` Fixed a bug that was causing :ref:`geom margin<body-geom-margin>` to be ignored during the
|
||||
construction of midphase collision trees.
|
||||
|
||||
34. :commit:`1bd6c94e` Fixed a bug that was generating incorrect values in ``efc_diagApprox`` for weld equality
|
||||
@@ -2089,7 +2089,7 @@ General
|
||||
:ref:`integration<mjd_quatIntegrate>` (rotation with an angular velocity). Derivatives are in the 3D tangent space.
|
||||
#. :commit:`c50c92cc` Added :ref:`mjv_connector` which has identical functionality to ``mjv_makeConnector``, but with
|
||||
more convenient "from-to" argument parametrization. ``mjv_makeConnector`` is now deprecated.
|
||||
#. :commit:`5fcdae77` Bumped oldest supported MacOS from version 10.12 to 11. MacOS 11 is the oldest version still
|
||||
#. :commit:`242aea93` Bumped oldest supported MacOS from version 10.12 to 11. MacOS 11 is the oldest version still
|
||||
maintained by Apple.
|
||||
|
||||
Python bindings
|
||||
@@ -2188,10 +2188,10 @@ General
|
||||
`elastic rubber balls <https://www.youtube.com/watch?v=uFLJcRegIVQ&t=3s>`__. This is an advanced option currently
|
||||
only supported by explicit :ref:`contact pairs<contact-pair>`, using the
|
||||
:ref:`solreffriction<contact-pair-solreffriction>` attribute.
|
||||
#. :commit:`b0bc330b` Added :ref:`mjd_inverseFD` for finite-differenced inverse-dynamics derivatives.
|
||||
#. :commit:`c50177d3` Added :ref:`mjd_inverseFD` for finite-differenced inverse-dynamics derivatives.
|
||||
#. :commit:`49efa9cc` Added functions for operations on banded-then-dense "arrowhead" matrices. Such matrices are common
|
||||
when doing direct trajectory optimization. See :ref:`mju_cholFactorBand` documentation for details.
|
||||
#. :commit:`b0bc330b` Added :ref:`mj_multiRay` function for intersecting multiple rays emanating from a single point.
|
||||
#. :commit:`2ad82d59` Added :ref:`mj_multiRay` function for intersecting multiple rays emanating from a single point.
|
||||
This is significantly faster than calling :ref:`mj_ray` multiple times.
|
||||
#. :commit:`9d1a21f9` Ray-mesh collisions are now up to 10x faster, using a bounding volume hierarchy of mesh faces.
|
||||
#. :commit:`3d82d2a4` Increased ``mjMAXUIITEM`` (maximum number of UI elements per section in Simulate) to 100.
|
||||
@@ -2267,7 +2267,7 @@ General
|
||||
2. :commit:`7cc42ecf` Added :ref:`visual-global<visual-global>` flag
|
||||
:ref:`ellipsoidinertia<visual-global-ellipsoidinertia>` to visualize equivalent body inertias with ellipsoids instead
|
||||
of the default boxes.
|
||||
#. :commit:`0db9a453` Added midphase and broadphase collision statistics to :ref:`mjData`.
|
||||
#. :commit:`5f132af6` Added midphase and broadphase collision statistics to :ref:`mjData`.
|
||||
#. :commit:`01b84089` Added documentation for :ref:`engine plugins<exPlugin>`.
|
||||
#. :commit:`2e23594f` Added struct information to the ``introspect`` module.
|
||||
#. :commit:`fe3dccfd` Added a new extension mechanism called :ref:`resource providers<exProvider>`. This extensible
|
||||
@@ -2353,7 +2353,7 @@ General
|
||||
#. :commit:`d3d789cf` Modified :ref:`mju_error` and :ref:`mju_warning` to be variadic functions (support for printf-like
|
||||
arguments). The functions ``mju_error_i``, ``mju_error_s``, ``mju_warning_i``, and ``mju_warning_s`` are now
|
||||
deprecated.
|
||||
#. :commit:`8c7f6ce5` Implemented a performant ``mju_sqrMatTDSparse`` function that doesn't require dense memory
|
||||
#. :commit:`056e8492` Implemented a performant ``mju_sqrMatTDSparse`` function that doesn't require dense memory
|
||||
allocation.
|
||||
#. :commit:`8696247f` Added ``mj_stackAllocInt`` to get correct size for allocating ints on mjData stack. Reducing stack
|
||||
memory usage by 10% - 15%.
|
||||
@@ -2371,7 +2371,7 @@ Python bindings
|
||||
experimental/beta stage, and is not yet described in our :ref:`viewer documentation<PyViewer>`.)
|
||||
#. :commit:`7a0def97` Added the ``mjpython`` launcher for macOS, which is required for ``viewer.launch_passive`` to
|
||||
function there.
|
||||
#. :commit:`e20ab6c9` Removed ``efc_`` fields from joint indexers. Since the introduction of arena memory, these fields
|
||||
#. :commit:`71c5f179` Removed ``efc_`` fields from joint indexers. Since the introduction of arena memory, these fields
|
||||
now have dynamic sizes that change between time steps depending on the number of active constraints, breaking strict
|
||||
correspondence between joints and ``efc_`` rows.
|
||||
#. :commit:`e20ab6c9` Added a number of missing fields to the bindings of ``mjVisual`` and ``mjvPerturb`` structs.
|
||||
@@ -2420,29 +2420,29 @@ Bug fixes
|
||||
:align: right
|
||||
:width: 300px
|
||||
|
||||
6. :commit:`6b80b010` The ``launch_repl`` functionality in the Python viewer has been fixed.
|
||||
#. :commit:`10c5d6a1` Set ``time`` correctly in ``mjd_transitionFD``, to support time-dependent user code.
|
||||
6. :commit:`d022cd1a` The ``launch_repl`` functionality in the Python viewer has been fixed.
|
||||
#. :commit:`06557c14` Set ``time`` correctly in ``mjd_transitionFD``, to support time-dependent user code.
|
||||
#. :commit:`6b80b010` Fixed sensor data dimension validation when ``user`` type sensors are present.
|
||||
#. :commit:`6b80b010` Fixed incorrect plugin error message when a null ``nsensordata`` callback is encountered during
|
||||
#. :commit:`093125c2` Fixed incorrect plugin error message when a null ``nsensordata`` callback is encountered during
|
||||
model compilation.
|
||||
#. :commit:`10c5d6a1` Correctly end the timer (``TM_END``) ``mj_fwdConstraint`` returns early.
|
||||
#. :commit:`6b80b010` Fixed an infinite loop in ``mj_deleteFileVFS``.
|
||||
#. :commit:`e9869d3b` Correctly end the timer (``TM_END``) ``mj_fwdConstraint`` returns early.
|
||||
#. :commit:`436fc6e7` Fixed an infinite loop in ``mj_deleteFileVFS``.
|
||||
|
||||
Simulate
|
||||
^^^^^^^^
|
||||
|
||||
12. :commit:`6b80b010` Increased precision of simulate sensor plot y-axis by 1 digit
|
||||
12. :commit:`bc0184d6` Increased precision of simulate sensor plot y-axis by 1 digit
|
||||
(`#719 <https://github.com/google-deepmind/mujoco/issues/719>`_).
|
||||
#. :commit:`10c5d6a1` Body labels are now drawn at the body frame rather than inertial frame, unless inertia is being
|
||||
#. :commit:`79fffdc0` Body labels are now drawn at the body frame rather than inertial frame, unless inertia is being
|
||||
visualised.
|
||||
|
||||
Plugins
|
||||
^^^^^^^
|
||||
|
||||
14. :commit:`10c5d6a1` The ``reset`` callback now receives instance-specific ``plugin_state`` and ``plugin_data`` as
|
||||
14. :commit:`5c021d04` The ``reset`` callback now receives instance-specific ``plugin_state`` and ``plugin_data`` as
|
||||
arguments, rather than the entire ``mjData``. Since ``reset`` is called inside ``mj_resetData`` before any physics
|
||||
forwarding call has been made, it is an error to read anything from ``mjData`` at this stage.
|
||||
#. :commit:`10c5d6a1` The ``capabilities`` field in ``mjpPlugin`` is renamed ``capabilityflags`` to more clearly
|
||||
#. :commit:`30b4309a` The ``capabilities`` field in ``mjpPlugin`` is renamed ``capabilityflags`` to more clearly
|
||||
indicate that this is a bit field.
|
||||
|
||||
|
||||
@@ -2479,7 +2479,7 @@ General
|
||||
|
||||
#. :commit:`0eb7f871` Removed the requirement that stateless actuators come before stateful actuators.
|
||||
#. :commit:`f905c7fb` Added :ref:`mju_fill`, :ref:`mju_symmetrize` and :ref:`mju_eye` utility functions.
|
||||
#. :commit:`60fbb77b` Added :at:`gravcomp` attribute to :ref:`body<body>`, implementing gravity compensation and
|
||||
#. :commit:`23092a11` Added :at:`gravcomp` attribute to :ref:`body<body>`, implementing gravity compensation and
|
||||
buoyancy. See `balloons.xml <https://github.com/google-deepmind/mujoco/blob/main/model/balloons/balloons.xml>`__
|
||||
example model.
|
||||
#. :commit:`36b30e45` Renamed the ``cable`` plugin library to ``elasticity``.
|
||||
@@ -2510,16 +2510,16 @@ General
|
||||
- Only suitable for small strains (large displacements but small deformations). Tetrahedra may invert if subject to
|
||||
large loads.
|
||||
|
||||
#. :commit:`60fbb77b` Added API functions ``mj_loadPluginLibrary`` and ``mj_loadAllPluginLibraries``. The first function
|
||||
#. :commit:`9ecade07` Added API functions ``mj_loadPluginLibrary`` and ``mj_loadAllPluginLibraries``. The first function
|
||||
is identical to ``dlopen`` on a POSIX system, and to ``LoadLibraryA`` on Windows. The second function scans a
|
||||
specified directory for all dynamic libraries file and loads each library found. Dynamic libraries opened by these
|
||||
functions are assumed to register one or more MuJoCo plugins on load.
|
||||
#. :commit:`60fbb77b` Added an optional ``visualize`` callback to plugins, which is called during ``mjv_updateScene``.
|
||||
#. :commit:`0d52feaa` Added an optional ``visualize`` callback to plugins, which is called during ``mjv_updateScene``.
|
||||
This callback allows custom plugin visualizations. Enable stress visualization for the Cable plugin as an example.
|
||||
#. :commit:`dee1d602` Sensors of type :ref:`user<sensor-user>` no longer require :at:`objtype`, :at:`objname` and
|
||||
:at:`needstage`. If unspecified, the objtype is now :ref:`mjOBJ_UNKNOWN<mjtObj>`. ``user`` sensors :at:`datatype`
|
||||
default is now :at-val:`"real"`, :at:`needstage` default is now :at-val:`"acc"`.
|
||||
#. :commit:`60fbb77b` Added support for capsules in URDF import.
|
||||
#. :commit:`638c9a69` Added support for capsules in URDF import.
|
||||
#. :commit:`df25d7d6` On macOS, issue an informative error message when run under
|
||||
`Rosetta 2 <https://support.apple.com/en-gb/HT211861>`__ translation on an Apple Silicon machine. Pre-built MuJoCo
|
||||
binaries make use of `AVX <https://en.wikipedia.org/wiki/Advanced_Vector_Extensions>`__ instructions on x86-64
|
||||
@@ -2648,7 +2648,7 @@ General
|
||||
:align: right
|
||||
:height: 150px
|
||||
|
||||
1. :commit:`0b2f19bb` Added :ref:`adhesion actuators<actuator-adhesion>` mimicking vacuum grippers and adhesive
|
||||
1. :commit:`3d77eb1e` Added :ref:`adhesion actuators<actuator-adhesion>` mimicking vacuum grippers and adhesive
|
||||
biomechanical appendages.
|
||||
#. :commit:`3d77eb1e` Added related
|
||||
`example model <https://github.com/google-deepmind/mujoco/tree/main/model/adhesion>`__ and video:
|
||||
@@ -2659,7 +2659,7 @@ General
|
||||
applied. See :ref:`weld <equality-weld>` for more details.
|
||||
#. :commit:`d26501c0` Increased ``mjNEQDATA``, the row length of equality constraint parameters in ``mjModel.eq_data``,
|
||||
from 7 to 11.
|
||||
#. :commit:`8ca5887c` Added visualisation of anchor points for both :el:`connect` and :el:`weld` constraints (activated
|
||||
#. :commit:`d26501c0` Added visualisation of anchor points for both :el:`connect` and :el:`weld` constraints (activated
|
||||
by the 'N' key in ``simulate``).
|
||||
#. :commit:`8ca5887c` Added
|
||||
`weld.xml <https://github.com/google-deepmind/mujoco/blob/main/test/engine/testdata/weld.xml>`__ showing different
|
||||
@@ -2691,7 +2691,7 @@ General
|
||||
#. :commit:`8ca5887c` Added moment of inertia computation for all well-formed meshes. This option is activated by
|
||||
setting the compiler flag :at:`exactmeshinertia` to ``true`` (defaults to ``false``). This default may change in the
|
||||
future.
|
||||
#. :commit:`833dc740` Added parameter :at:`shellinertia` to :at:`geom`, for locating the inferred inertia on the
|
||||
#. :commit:`5c5449bf` Added parameter :at:`shellinertia` to :at:`geom`, for locating the inferred inertia on the
|
||||
boundary (shell). Currently only meshes are supported.
|
||||
#. :commit:`833dc740` For meshes from which volumetric inertia is inferred, raise error if the orientation of mesh faces
|
||||
is not consistent. If this occurs, fix the mesh in e.g., MeshLab or Blender.
|
||||
@@ -2732,20 +2732,20 @@ Version 2.2.1 (July 18, 2022)
|
||||
General
|
||||
^^^^^^^
|
||||
|
||||
1. :commit:`d3a86bb7` Added ``mjd_transitionFD`` to compute efficient finite difference approximations of the
|
||||
1. :commit:`228264c9` Added ``mjd_transitionFD`` to compute efficient finite difference approximations of the
|
||||
state-transition and control-transition matrices, :ref:`see here<derivatives>` for more details.
|
||||
#. :commit:`373cc894` Added derivatives for the ellipsoid fluid model.
|
||||
#. :commit:`d3a86bb7` Added ``ctrl`` attribute to :ref:`keyframes<keyframe>`.
|
||||
#. :commit:`09a5efc0` Added ``ctrl`` attribute to :ref:`keyframes<keyframe>`.
|
||||
#. :commit:`c14a7ef4` Added ``clock`` sensor which :ref:`measures time<sensor-clock>`.
|
||||
#. :commit:`d3a86bb7` Added visualisation groups to skins.
|
||||
#. :commit:`d3a86bb7` Added actuator visualisation for ``free`` and ``ball`` joints and for actuators with ``site``
|
||||
#. :commit:`2d0995b4` Added visualisation groups to skins.
|
||||
#. :commit:`6ead1461` Added actuator visualisation for ``free`` and ``ball`` joints and for actuators with ``site``
|
||||
transmission.
|
||||
#. :commit:`d3a86bb7` Added visualisation for actuator activations.
|
||||
#. :commit:`d3a86bb7` Added ``<actuator-intvelocity>`` actuator shortcut for "integrated velocity" actuators, documented
|
||||
:ref:`here <actuator-intvelocity>`.
|
||||
#. :commit:`d3a86bb7` Added ``<actuator-damper>`` actuator shortcut for active-damping actuators, documented
|
||||
:ref:`here <actuator-damper>`.
|
||||
#. :commit:`d3a86bb7` ``mju_rotVecMat`` and ``mju_rotVecMatT`` now support in-place multiplication.
|
||||
#. :commit:`ec7133b0` ``mju_rotVecMat`` and ``mju_rotVecMatT`` now support in-place multiplication.
|
||||
#. :commit:`d3a86bb7` ``mjData.ctrl`` values are no longer clamped in-place, remain untouched by the engine.
|
||||
#. :commit:`d3a86bb7` Arrays in mjData's buffer now align to 64-byte boundaries rather than 8-byte.
|
||||
#. :commit:`f887c1e9` Added memory poisoning when building with
|
||||
@@ -2765,13 +2765,13 @@ Bug fixes
|
||||
``quat`` and an :ref:`alternative specifier<COrientation>` e.g., ``<geom ... quat=".1 .2 .3 .4" euler="10 20 30">``,
|
||||
would lead to the ``quat`` being ignored and only ``euler`` being used. After this change a parse error will be
|
||||
thrown.
|
||||
#. :commit:`d3a86bb7` Stricter parsing of XML attributes. Before this change an erroneous XML snippet like
|
||||
#. :commit:`f3453cf8` Stricter parsing of XML attributes. Before this change an erroneous XML snippet like
|
||||
``<geom size="1/2 3 4">`` would have been parsed as ``size="1 0 0"`` and no error would have been thrown. Now throws
|
||||
an error.
|
||||
#. :commit:`d3a86bb7` Trying to load a ``NaN`` via XML like ``<geom size="1 NaN 4">``, while allowed for debugging
|
||||
purposes, will now print a warning.
|
||||
#. :commit:`d3a86bb7` Fixed null pointer dereference in ``mj_loadModel``.
|
||||
#. :commit:`d3a86bb7` Fixed memory leaks when loading an invalid model from MJB.
|
||||
#. :commit:`d5672639` Fixed null pointer dereference in ``mj_loadModel``.
|
||||
#. :commit:`dbef8e6c` Fixed memory leaks when loading an invalid model from MJB.
|
||||
#. :commit:`d3a86bb7` Integer overflows are now avoided when computing ``mjModel`` buffer sizes.
|
||||
#. :commit:`d3a86bb7` Added missing warning string for ``mjWARN_BADCTRL``.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user