Skip to content

2.2.2

Compare
Choose a tag to compare
@saran-t saran-t released this 07 Sep 12:30
· 2253 commits to main since this release

General

  1. Added adhesion actuators mimicking vacuum grippers and adhesive biomechanical appendages.

  2. Added related example model and video.

  3. Added mj_jacSubtreeCom for computing the translational Jacobian of the center-of-mass of a subtree.

  4. Added torquescale and anchor attributes to weld constraints. torquescale sets the torque-to-force ratio exerted by the constraint, anchor sets the point at which the weld wrench is applied. See weld for more details.

  5. Increased mjNEQDATA, the row length of equality constraint parameters in mjModel.eq_data, from 7 to 11.

  6. Added visualisation of anchor points for both connect and weld constraints (activated by the 'N' key in simulate).

  7. Added weld.xml showing different uses of new weld attributes.

  8. Cartesian 6D end-effector control is now possible by adding a reference site to actuators with site transmission. See description of new refsite attribute in the actuator documentation and refsite.xml example model. Video

  9. Added autolimits compiler option. If true, joint and tendon limited attributes and actuator ctrllimited, forcelimited and actlimited attributes will automatically be set to true if the corresponding range is defined and false otherwise.

    If autolimits="false" (the default) models where a range attribute is specified without the limited attribute will fail to compile. A future release will change the default of autolimits to true, and this compilation error allows users to catch this future change of behavior.

    This is a breaking change. In models where a range was defined but limited was unspecified, explicitly set limited to false or remove the range to maintain the current behavior of your model.

  10. Added moment of inertia computation for all well-formed meshes. This option is activated by setting the compiler flag exactmeshinertia to true (defaults to false). This default may change in the future.

  11. Added parameter shellinertia to geom, for locating the inferred inertia on the boundary (shell). Currently only meshes are supported.

  12. 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.

  13. Added catenary visualisation for hanging tendons. The model seen in the video can be found here.

  14. Added azimuth and elevation attributes to visual/global, defining the initial orientation of the free camera at model load time.

  15. Added mjv_defaultFreeCamera which sets the default free camera, respecting the above attributes.

  16. simulate now supports taking a screenshot via a button in the File section or via Ctrl-P.

  17. Improvements to time synchronisation in simulate, in particular report actual real-time factor if different from requested factor (if e.g., the timestep is so small that simulation cannot keep up with real-time).

  18. Added a disable flag for sensors.

  19. mju_mulQuat and mju_mulQuatAxis support in place computation. For example mju_mulQuat(a, a, b); sets the quaternion a equal to the product of a and b.

  20. Added sensor matrices to mjd_transitionFD (note this is an API change).

Deleted/deprecated features

  1. Removed distance constraints.

Bug fixes

  1. Fixed rendering of some transparent geoms in reflection.
  2. Fixed intvelocity defaults parsing.