From 8307a2ac2b418ce56920ebf77eedc7d5d1e3e0a4 Mon Sep 17 00:00:00 2001 From: Shashank Udyavar Date: Thu, 11 Jun 2026 13:02:32 +0530 Subject: [PATCH] fix(RigidObject): add missing UncoupledConstraintCorrection for dynamic objects RigidObject.py docstring states UncoupledConstraintCorrection is added to dynamic rigid bodies, but the implementation never adds it. This causes FreeMotionAnimationLoop to silently skip constraint propagation on every step, leaving all dynamic objects frozen despite the simulation appearing to run normally. No error is raised. Fix: add UncoupledConstraintCorrection inside the isAStaticObject guard. --- python3/src/stlib3/physics/rigid/RigidObject.py | 1 + 1 file changed, 1 insertion(+) diff --git a/python3/src/stlib3/physics/rigid/RigidObject.py b/python3/src/stlib3/physics/rigid/RigidObject.py index a445693..52196e1 100644 --- a/python3/src/stlib3/physics/rigid/RigidObject.py +++ b/python3/src/stlib3/physics/rigid/RigidObject.py @@ -63,6 +63,7 @@ def RigidObject(name="RigidObject", if not isAStaticObject: object.addObject('EulerImplicitSolver') object.addObject('CGLinearSolver', iterations=25, tolerance=1e-5, threshold=1e-5) + object.addObject('UncoupledConstraintCorrection') def addCollisionModel(inputMesh=surfaceMeshFileName): objectCollis = object.addChild('collision')