Springy Keys is a Cinema 4D Expression Tag that adds spring/inertia behavior to an object’s animated P/S/R (Position / Scale / Rotation).
I have ported the plugin to Cinema 4D Python to enable extended support and reduce ongoing development overhead for end users.
You can find the original plugin here: Springy Keys
You can also get the latest python version in boghma plugins
Original author: Cactus Dan
- Add secondary motion to hand-keyed or baked animation.
- Make transforms feel less mechanical (soft follow-through).
- Add subtle overshoot and damping without editing F-curves.
- Copy the whole folder into one of your Cinema 4D plugin locations.
- Restart Cinema 4D.
- In Cinema 4D, add the tag to an object:
Dan was a self-taught programmer who mastered complex mathematical concepts to create these tools. Beyond his technical skills, he was known for his cowboy lifestyle, spending his last years exploring the Utah desert on horseback.
We are making these source files available in memory of Cactus Dan, ensuring his work lives on within the 3D community.
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 (CC BY-NC 4.0) License.
- You are free to use, modify, and share the code.
- Commercial use is strictly prohibited.
- You must credit Cactus Dan as the original creator.
For full details, see the Creative Commons License.
This project is shared with the community to keep Dan’s work alive.
-
Position
- Enables spring effect on position.
- If disabled, position stays exactly on the animated target.
-
Scale
- Enables spring effect on scale.
- If disabled, scale stays exactly on the animated target.
-
Rotation
- Enables spring effect on rotation.
- If disabled, rotation stays exactly on the animated target.
-
Strength
- Internally used as a blend factor.
- Split Forces (P/S/R)
- When off: Position stiffness/damping/mass are also used for Scale and Rotation.
- When on: Position/Scale/Rotation each have their own stiffness/damping/mass.
-
Stiffness
- Higher values pull harder toward the target (snappier).
-
Damping
- Higher values reduce oscillation faster.
-
Mass
- Higher values make motion heavier/slower to respond.
Original concept/plugin credited in project notes to Cactus Dan.
