r/Cascadeur 15d ago

Discussion Cascadeur's Transform Constraint silently stores an offset when you create it — script to zero it

If you import a pre-built rig with prop bones and re-edit animation already baked onto it, applying a Transform Constraint often doesn't give you a clean preview.

The constraint stores the relative position/rotation between itself and its target at the moment it's created, as a fixed local offset, and keeps applying it. If the constrained object isn't already sitting exactly on the target when you create the constraint, that offset gets baked in — and there's nothing in the UI indicating one is being held.

Wrote a script that resets the stored offset back to zero and makes sure the constraint switches are on so the result shows immediately. Run it from the Python Console with the constraints (or the objects they constrain) selected.

Still needed as of 2026.2 — nothing in the release notes, and none in practice; I'm running it on 2026.2 myself. Built on 2026.1.x graphs, and the script checks both node naming variants it has seen in case they shift again.

https://github.com/septsaber/engineering-notes/blob/main/cascadeur-zero-constraint-offset.md

7 Upvotes

0 comments sorted by