TimeWarp
I think it's ready for general use now so here is my latest contraption! :)
It's a free scripted modifier plugin called 'Timewarp'. Its main use is for easy-nondestructive-time-remapping of animations. You get a curve that represent the object local time flow, similar to the PointCache's 'Playback graph' function.
A standard example would be a bullet-time effect. you can gradually slow down the animation of a few objects while the camera keeps moving at normal time. This without modifying the original keys or messing manually with a lot of EaseCurves.
So if you have a complex animation and you would like parts to speed up, slow down or even freeze or reverse it then Timewarp can help you do that with ease.
How does it work?
1 ) Select your objects and add a 'timewarp' modifier to them
2) Now nothing happens :) To initialize it press the '(re)create EaseCurves' button. This applies max's native EaseCurve to all animated properties, including materials, and connect them to the modifier's spinner.
3) Now if you play with the 'timewarp' spinner you can see your animation going trough time. You can animate this value to create a timewarp effect.
If you animate other parameters that weren't animated at the time you've added the modifier they won't be affected by the timewarp. Press the '(re)create EaseCurves' button to include them if you want.
When you disable the modifier on the stack it switches back to normal time, now you can easily adjust the original animation in max's normal linear time. When you re-enable the modifier the timewarp takes over again.
pressing the 'remove EaseCurves' button does just that, the object will no longer be time warped. (use this before deleting the modifier from the stack, if you forgot you can add a new timewarp modifier and use this button to remove the old EaseCurves as well)
Technical bits:
It's all based on the 'EaseCurve' functions of max, this plugin automates and makes it easier to manage these.
Installation:
Place script in 'max_root/scripts/startup' folder and restart max. If all went well a 'timewarp' modifier should be present in the modifier dropdown list.
Attachment | Size |
---|---|
timewarp_2_2.zip | 1.59 KB |
Comments
This works on Max 2024.2.....
This works on Max 2024.2..... but...
Is there a way to bake the resulting animation back into keyframes?
Thanks.
It's strange. Animation is
It's strange. Animation is only displayed when the object is selected. If you remove the selection from the object, it will remain fixed in the position that was at the time of the removal of the selection.
Animations will also not be visible when the object is rendered, even if it is selected at the time the render is started.
(3ds Max 2017)
Max 2014 and up compatibility
Hello Jonathan,
First of: thanks for this great script. I have used it a while back and found it very useful.
I installed it again in Max 2014. The modifier shows up in the list but when applied nothing happens.
Is there a way you could update this tool so it works with more recent max-versions?
Thanks in advance,
Tim
Particles False Reaction - Collapsing Modifier
Hi Jonathan.
Thanks for your great script.
Although I have a problem.
timewarp modifier is applied on an animated point helper which is parenting a particle emitter. but particles reaction don't seem to be correct. they can't recognize the actual motion path created by my keyframe animations and the timewarp applied on them
i think it will get fixed if i could collapse the timewarp modifier on the keyframe animation..but when i do it, it doesn't work (as you probably know)
Is there any way to collapse it ?
fantastic!
some weeks ago I was thinking, a script like this would be incredibly useful.thank you, will try it out soon!
some bugs...
Hi, Thank you for the script. I've found some problems in populated scenes:
1- You cannot render a range of frames. It doesn't update the moving objects with this modifier applied.
There is a workaround but too complicated: You have to render frame by frame via Maxscript with a sliderTime sentence to update the current time in the scene before each render.
2- This script does not erase all easy curves applied when 'Remove all EasyCurves' button is clicked. Sometimes you find a lot of ease curves in your tracks.
3- This script does not work with link constraints.
O.M.G!... this is the
O.M.G!... this is the greatest script I have ever seen! you can do Matrix effects effortlessly thank you Jonathan!!! you are a genius!
also i wish there was a way to precompose an animation in max, does any one know how to do this?
Network rendering doesn't work
Hi there,
unfortunately I can't get the plugin to work correctly when network rendered. The animation just doesn't play and my objects stay stuck in one place.
When rendering locally, everything is fine, but as soon as I submit the shots to the farm, TimeWarp stops working. :(
- loocas
Collapse timewarped animation?
Just wondering if there was a way to collapse the final animation after it was timewarped?
Just to thanks
Great stuff here...very usefull kit for animators!
Cheers