What changed
- Added geom/surfacevel attribute, allowing static geoms to simulate conveyor belts, treadmills, or turntables, driving touching bodies via friction.
- Added geom/adhesion and pair/adhesion attributes, adding adhesive forces to contacts for modeling sticky materials like glue or magnets.
- Implicitfast integrator now uses gyroscopic derivatives instead of midpoint integration, eliminating energy gain for free bodies but introducing mild damping for tumbling.
- Added body/simple attribute (false/auto) to disable the simple body mass matrix optimization, useful for domain randomization.
- Default sleep tolerance changed from 1e-4 to 1e-3 (1mm/s in SI units), making sleep detection more lenient.
- Removed legacy inertia matrix mjData.qM; now using CSR format mjData.M. Related APIs like mjd_inverseFD have changed parameter shapes.
- Added ctrlnum and outnum fields to actuators, preparing for future MIMO actuator support; existing actuators are unaffected.