Notifications
Clear all

[Closed] Biped: script to visualize stepped animation

(i’m not english, i’ll try to do my best )

Hi guys !

One of the greatest issue of the Biped in 3DS Max is its lack of stepped interpolation in animation.
If it's impossible to [i]make [/i]it this way, maybe it's possible to [i]see [/i]it as if (an it will be good enough).
So, I had the idea of scripting some tools to visualize the animation, in the viewport, with no interpolation, without changing the curves.
Like playing the animation, by a button of the script, whitch will step, from key to key, without display interpolated frames.

But I tried some naive things that didn't work at all. Like:
 try ( destroydialog roll_play; ) catch ()
    rollout roll_play "Play"
    (
    	local play_anim = false;
    	button b_play "Play";
    	
    	on b_play pressed do
    	(
    		play_anim = not play_anim;
    		local activeFrame = slidertime;
    		while (play_anim) do
    		(
    			activeFrame += 1f;
    			if (activeFrame > animationrange.end) then
    				activeFrame = animationrange.start;
    			slidertime = activeFrame;
    		)
    	)
    )
    createdialog roll_play; 

It’s just a try, to play the animation by a button, nothing more yet.
Obviously, if you run it, you are stuck in the while loop. And you need to restart 3DS Max >.> … (is there a way to abort a running script?)

I can’t figure how to build the script to make it’s behaviour close to what I expect.

Can anyone help me on this?

2 Replies

use “while not keyboard.escpressed do …” for example

Oh yeah thanks, it’s helpful !
My script works pretty well now. But when I let it run, my processor cooler just make a nasty noise !
Is it possible to make the script “sleep” during a loop? I mean, like a game loop whitch don’t cross the limit of 30FPS for example. To avoid my computer dying !