2.2.2
General
-
Added adhesion actuators mimicking vacuum grippers and adhesive biomechanical appendages.
-
Added related example model and video.
-
Added
mj_jacSubtreeCom
for computing the translational Jacobian of the center-of-mass of a subtree. -
Added
torquescale
andanchor
attributes toweld
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. -
Increased
mjNEQDATA
, the row length of equality constraint parameters inmjModel.eq_data
, from 7 to 11. -
Added visualisation of anchor points for both
connect
andweld
constraints (activated by the 'N' key insimulate
). -
Added weld.xml showing different uses of new weld attributes.
-
Cartesian 6D end-effector control is now possible by adding a reference site to actuators with
site
transmission. See description of newrefsite
attribute in the actuator documentation and refsite.xml example model. Video -
Added
autolimits
compiler option. Iftrue
, joint and tendonlimited
attributes and actuatorctrllimited
,forcelimited
andactlimited
attributes will automatically be set totrue
if the corresponding range is defined andfalse
otherwise.If
autolimits="false"
(the default) models where arange
attribute is specified without thelimited
attribute will fail to compile. A future release will change the default ofautolimits
totrue
, 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 tofalse
or remove the range to maintain the current behavior of your model. -
Added moment of inertia computation for all well-formed meshes. This option is activated by setting the compiler flag
exactmeshinertia
totrue
(defaults tofalse
). This default may change in the future. -
Added parameter
shellinertia
togeom
, for locating the inferred inertia on the boundary (shell). Currently only meshes are supported. -
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.
-
Added catenary visualisation for hanging tendons. The model seen in the video can be found here.
-
Added
azimuth
andelevation
attributes to visual/global, defining the initial orientation of the free camera at model load time. -
Added
mjv_defaultFreeCamera
which sets the default free camera, respecting the above attributes. -
simulate
now supports taking a screenshot via a button in the File section or viaCtrl-P
. -
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). -
Added a disable flag for sensors.
-
mju_mulQuat
andmju_mulQuatAxis
support in place computation. For examplemju_mulQuat(a, a, b);
sets the quaterniona
equal to the product ofa
andb
. -
Added sensor matrices to
mjd_transitionFD
(note this is an API change).
Deleted/deprecated features
- Removed
distance
constraints.
Bug fixes
- Fixed rendering of some transparent geoms in reflection.
- Fixed
intvelocity
defaults parsing.