
When Your Rigging Script Becomes Obsolete... And So Do You 😅
The day you updated to 3ds Max 2022, your trusty script for inheriting twist angles stopped working. Don't worry, it's not personal - it's just that Max decided to change the rules of the game. But we have the modern solution to get your rig working like a Swiss watch again.
"Old scripts are like classic cars: nice to look at, but nobody wants to use them daily" — Technical Artist who lost a week of work.
The New Magic Formula
Forget the old Script Controllers and use this code in an Expression Controller:
dependsOn $control_pie.swivel_angle
return degToRad($control_pie.swivel_angle $control_pie.inherit_swivel_angle)
Crucial note: degToRad has a capital T - this small detail can be the difference between success and hours of frustration.
Step-by-Step Setup
- Create custom attributes on your control:
- swivel_angle (base angle)
- inherit_swivel_angle (inheritance factor 0-1)
- Assign an Expression Controller to the desired rotation
- Paste the code and verify the exact names
Common Errors to Avoid
If it's still not working, check:
- Do the variable names match exactly?
- Are you using degToRad (not Degtorad)?
- Is the expression in a modern Expression Controller?
- Is the parent rotation not locked?
Why Did Everything Change?
Recent versions of 3ds Max:
- Optimized expression handling
- Improved stability with controllers
- Made syntax stricter
In the end, although the change hurts at first, the new system is more reliable. As the saying goes: "What doesn't kill you makes you reinstall 3ds Max three times". 💻🔥
P.S.: If you miss the old scripts, you can always install a virtual machine with Max 2010... but better not to.