Changelog: v2.4
v2.4.7 (2026-08-15)
Worldaborts when headers andlibraisimlayouts differ.- Validation: time step, mass/inertia, zero quaternions, unknown link/joint names, collision edits.
SingleBodyObject::setMassProperties; fixed gyroscopic modes (energy-conserving implicit midpoint) and kinematic bodies; correct capsule/cylinder inertia.ArticulatedSystemfixes:getJointCoordinateby joint type, framesetExternalForcein world frame, composite COM/mass matrix, collision group/mask kept.HeightMap:setPositionmoves collision and rays;getContactHeight; transactional validated updates; mutablegetHeightMap()removed; 16-bit PNG fix.- Heightmap contacts, swept CCD and rays corrected; consistent contact normals; MPR and mesh validation fixes.
- Granular: periodic minimum image, momentum conservation across substeps, articulated coupling; constraint energy/tension fixes.
- MJCF
<equality><connect>creates pin constraints; many MJCF/URDF/USD loader fixes and validations. - Sensor property validation; fisheye FOV up to π.
- XML parser hardening; math-library bounds fixes.
RaisimServerrejects malformed requests per connection; transactional spawn/edit.
v2.4.6 (2026-08-11)
- Faster broadphase (SAP −51% dense, no-broadphase −64%), box–cylinder, MPR and GJK, heightmap contacts and
HeightMap::update. - Contact solver skips unchanged contacts exactly; granular skips redundant grid rebuild.
- Faster rayrai frame caching and material apply.
Weather:automaticUtcOffset,utcOffsetHours.
v2.4.5 (2026-08-02)
- Contact solver: no self-confirmation sweep (stress −24.5%), devirtualized updates, cheaper rank check.
- ABA contact pass shares basis propagation (−43% at 8 contacts/body); principal-axis revolute fast path (~7%).
- Convex mesh vs heightmap −20%.
- Fixed: blended friction cone, MPR hang on deformables, capsule inertia,
matScalarMul, terrain rounding, deformable substep velocity, sphere-on-cylinder NaN, ray inside sphere, 0-DOF systems. - Joint velocity limit defaults to infinity (ranged MJCF joints no longer frozen).
Pathnormalization rewritten; MJCF material/fixed-child/slide-range fixes; typeless geoms are spheres.- Debug and Release installs coexist;
RAISIM_INSTALL_CONFIG; Linux built for Ubuntu 20.04. - TCP viewer: non-blocking auto-connect, drains all messages per frame, clean reconnect.
v2.4.4 (2026-06-21)
- ABA/articulated dynamics speedups (up to −7%); allocation-free RNE.
- Mesh BVH and ray queries reuse scratch stacks (−9%).
- Math fixes: aliasing-safe
matmul,cholInv2overflow, rectangularfillSub, block/row refs. - Frame lookups fail with an error when not found.
- Server serialization fixes.
run_tests.sh/run_benchmarks.shwrappers.
v2.4.3 (2026-06-13)
- Contact solver: warm start, skip unchanged contacts, early stop and stall detection (primitive pile −54%, Atlas pile −75%).
- Fixed deformable/granular warm-start read and destructor alignment.
SingleBodyObject::setPosition(Vec<3>).- TCP viewer reads all server contact layouts.
- One shared OpenUSD runtime for raisim and rayrai; Windows
/FSbuild fix.
v2.4.2 (2026-06-09)
try_lock()onWorld, objects, constraints, sensors and server visuals.- Server: Windows
SOCKETfix; viewer forces wake sleeping bodies. - TCP viewer: scene-reset slowdown fixed, disconnect status,
--wait-for-serverfix. - rayrai: async auto-exposure, render caches, hardened fuzz-tested protocol reader, graceful shader failures.
- Binary STL with undefined alpha loads opaque.
- macOS x86_64 OpenUSD; source installs on macOS build OpenUSD when it is missing.
v2.4.1 (2026-06-06)
- macOS arm64 and x86_64 packages.
- rayrai foliage: atlases, GPU and Hi-Z culling, multi-draw indirect, hierarchical clusters, impostors, shadow LOD, alpha-depth prepass.
- Cached static/dynamic shadows; on-disk mesh preprocess cache and automatic mesh LOD.
InstancedVisuals::addInstances,reserveInstancesand foliage policies.
v2.4.0 (2026-06-01)
- USD Physics articulations:
World::addUsdArticulatedSystem;.usd*worlds. - OpenUSD always bundled (
RAISIM_OPENUSDremoved); rayrai loads USD on Windows. - Parent–child collision filtering by collision bodies; material changes apply immediately.
SingleBodyObject::getDOF/getGeneralizedCoordinateDimareconstexpr.- TCP: mouse forces scaled by body mass, Shift-drag picking, Windows client and discovery.
- rayrai: vertex displacement, terrain normal/height maps, auto parallax, foliage wind,
findInstancedVisuals.