|
1 |
| -.. include:: includes/macros.rst |
2 |
| -.. include:: includes/roles.rst |
3 |
| - |
4 | 1 | =========
|
5 | 2 | Changelog
|
6 | 3 | =========
|
7 | 4 |
|
8 |
| -Version 2.1 (Oct. 18, 2021) |
9 |
| ---------------------------- |
| 5 | +Version 2.1.1 (Dec. 16, 2021) |
| 6 | +----------------------------- |
| 7 | + |
| 8 | +API changes |
| 9 | +^^^^^^^^^^^ |
| 10 | + |
| 11 | +1. Added ``mj_printFormattedModel``, which accepts a format string for floating point numbers, for example to increase |
| 12 | + precision. |
| 13 | +#. Added ``mj_versionString``, which returns human-readable string that represents the version of the MuJoCo binary. |
| 14 | +#. Converted leading underscores to trailing underscores in private instances of API struct definitions, to conform to |
| 15 | + reserved identifier directive, see |
| 16 | + `C standard: Section 7.1.3 <www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf>`__. |
| 17 | + |
| 18 | + .. attention:: |
| 19 | + This is a minor breaking change. Code which references private instances will break. To fix, replace leading |
| 20 | + underscores with trailing underscores, e.g. ``_mjModel`` |rarr| ``mjModel_``. |
| 21 | + |
| 22 | +General |
| 23 | +^^^^^^^ |
| 24 | + |
| 25 | +4. Safer string handling: replaced ``strcat``, ``strcpy``, and ``sprintf`` with ``strncat``, ``strncpy``, and |
| 26 | + ``snprintf`` respectively. |
| 27 | +#. Changed indentation from 4 spaces to 2 spaces everywhere. |
| 28 | + |
| 29 | +Bug Fixes |
| 30 | +^^^^^^^^^ |
| 31 | + |
| 32 | +6. Fixed reading from uninitialized memory in PGS solver. |
| 33 | +#. Computed capsule inertias are now exact. Until this change, capsule masses and inertias computed by the |
| 34 | + :ref:`compiler <compiler>`'s :at:`inertiafromgeom` mechanism were approximated by a cylinder, formed by the |
| 35 | + capsule's cylindrical middle section, extended on both ends by half the capsule radius. Capsule inertias are now |
| 36 | + computed with the `Parallel Axis theorem <https://en.wikipedia.org/wiki/Parallel_axis_theorem>`_, applied to the two |
| 37 | + hemispherical end-caps. |
| 38 | + |
| 39 | + .. attention:: |
| 40 | + This is a minor breaking change. Simulation of a model with automatically-computed capsule inertias will be |
| 41 | + numerically different, leading to, for example, breakage of golden-value tests. |
| 42 | +#. Fixed bug related to :ref:`force <sensor-force>` and :ref:`torque <sensor-torque>` sensors. Until this change, forces |
| 43 | + torques reported by F/T sensors ignored out-of-tree constraint wrenches except those produced by contacts. Force and |
| 44 | + and torque sensors now correctly take into account the effects of :ref:`connect <equality-connect>` and |
| 45 | + :ref:`weld <equality-weld>` constraints. |
| 46 | + |
| 47 | + .. note:: |
| 48 | + Forces generated by :ref:`spatial tendons <spatial>` which are outside the kinematic tree (i.e. between bodies |
| 49 | + which have no ancestral relationship) are still not taken into account by force and torque sensors. This remains a |
| 50 | + future work item. |
| 51 | + |
| 52 | +Code samples |
| 53 | +^^^^^^^^^^^^ |
| 54 | + |
| 55 | +9. ``testspeed``: Added injection of pseudo-random control noise, turned on by default. This is to avoid settling into |
| 56 | + some fixed contact configuration and providing an unrealistic timing measure. |
| 57 | +#. ``simulate``: |
| 58 | + |
| 59 | + a. Added slower-than-real-time functionality, which is controlled via the '+' and '-' keys. |
| 60 | + #. Added sliders for injecting Brownian noise into the controls. |
| 61 | + #. Added "Print Camera" button to print an MJCF clause with the pose of the current camera. |
| 62 | + #. The camera pose is not reset when reloading the same model file. |
| 63 | + |
| 64 | +Updated dependencies |
| 65 | +^^^^^^^^^^^^^^^^^^^^ |
| 66 | + |
| 67 | +11. ``TinyXML`` was replaced with ``TinyXML2`` 6.2.0. |
| 68 | +#. ``qhull`` was upgraded to version 8.0.2. |
| 69 | +#. ``libCCD`` was upgraded to version 1.4. |
| 70 | +#. On Linux, ``libstdc++`` was replaced with ``libc++``. |
| 71 | + |
| 72 | +Binary build |
| 73 | +^^^^^^^^^^^^ |
| 74 | + |
| 75 | +15. MacOS packaging. We now ship Universal binaries that natively support both Apple Silicon and Intel CPUs. |
| 76 | + |
| 77 | + a. MuJoCo library is now packaged as a |
| 78 | + `Framework Bundle <https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/FrameworkAnatomy.html>`_, |
| 79 | + allowing it to be incorporated more easily into Xcode projects (including Swift projects). Developers are |
| 80 | + encouraged to compile and link against MuJoCo using the ``-framework mujoco`` flag, however all header files and |
| 81 | + the ``libmujoco.2.1.1.dylib`` library can still be directly accessed inside the framework. |
| 82 | + #. Sample applications are now packaged into an Application Bundle called ``MuJoCo.app``. When launched via GUI, |
| 83 | + the bundle launches the ``simulate`` executable. Other precompiled sample programs are shipped inside that bundle |
| 84 | + (in ``MuJoCo.app/Contents/MacOS``) and can be launched via command line. |
| 85 | + #. Binaries are now signed and the disk image is notarized. |
| 86 | + |
| 87 | +#. Windows binaries and libraries are now signed. |
| 88 | +#. Link-time optimization is enabled on Linux and macOS, leading to an average of \~20% speedup when benchmarked on |
| 89 | + three test models (``cloth.xml``, ``humanoid.xml``, and ``humanoid100.xml``). |
| 90 | +#. Linux binaries are now built with LLVM/Clang instead of GCC. |
| 91 | +#. An AArch64 (aka ARM64) Linux build is also provided. |
| 92 | +#. Private symbols are no longer stripped from shared libraries on Linux and MacOS. |
| 93 | + |
| 94 | +Sample models |
| 95 | +^^^^^^^^^^^^^ |
| 96 | +21. Clean-up of the ``model/`` directory. |
| 97 | + |
| 98 | + a. Rearranged into subdirectories which include all dependencies. |
| 99 | + #. Added descriptions in XML comments, cleaned up XMLs. |
| 100 | + #. Deleted some composite models: ``grid1``, ``grid1pin``, ``grid2``, ``softcylinder``, ``softellipsoid``. |
| 101 | + |
| 102 | +#. Added descriptive animations in ``docs/images/models/`` : |
| 103 | + |
| 104 | +|humanoid| |particle| |
| 105 | + |
| 106 | + |
| 107 | +Version 2.1.0 (Oct. 18, 2021) |
| 108 | +----------------------------- |
10 | 109 |
|
11 | 110 | New features
|
12 | 111 | ^^^^^^^^^^^^
|
@@ -63,3 +162,8 @@ Earlier Versions
|
63 | 162 | ----------------
|
64 | 163 |
|
65 | 164 | For changelogs of earlier versions please see `roboti.us <https://www.roboti.us/download.html>`_.
|
| 165 | + |
| 166 | +.. |humanoid| image:: images/models/humanoid.gif |
| 167 | + :width: 270px |
| 168 | +.. |particle| image:: images/models/particle.gif |
| 169 | + :width: 270px |
0 commit comments