I have a flapping bird animated in 25 frames.
The bird obj is NOT procedurally animated but using key frame method using about 8 to 10 channels for flapping movement.
And i save it as bgeo with 25 frames for one flaping.
Then, i repeated it to the length of the music.
Now, I need to control the speed of flappings to match it to the music.
Would anyone please help me in how i can achieve it to match the speed of bird flappings to the music i imported to houdini.
Steve.
Controlling the speed of repeated animation
18442 9 2-
- aplink
- Member
- 365 posts
- Joined: April 2008
- Offline
-
- WhoDjini
- Member
- 94 posts
- Joined: Dec. 2008
- Offline
Two possible solutions for that one:
1st: Create different bgeo sequences for each of the possible speeds, and figure out a way to reference them. Like where evr you determine the required speed, you export a variable and refer to it in the file node
GEO`chop(“/ch/music/OUT_SPEED”)`.`padzero(5,1+($F-1)%25)`.bgeo
But that hat would be too space consuming on your discs.
2nd: Use the speed to “skip” some frames of your animation to achieve an effect of speeding up. Or display a frame of your animation for several frames to achieve a slow down. Something in the like of
GEO`padzero(5,1+(($F-1)*chop(“/ch/music/OUT_SPEED”))%25)`.bgeo
where OUT_SPEED is a chop node that computes your “speed”.
–
Anyway, it's just simple math, when you want your animation to look “slower” you display a frame of it for more than one frame, and if you want it “faster” you just skip some frames. But be aware, that it has its limitations. Outside certain bounds it might look really cruel (Flickering, shutter effects). Like the effect when you watch a car passing by through a fence, at the right speed it seems the tires are rotating backwards….
1st: Create different bgeo sequences for each of the possible speeds, and figure out a way to reference them. Like where evr you determine the required speed, you export a variable and refer to it in the file node
GEO`chop(“/ch/music/OUT_SPEED”)`.`padzero(5,1+($F-1)%25)`.bgeo
But that hat would be too space consuming on your discs.
2nd: Use the speed to “skip” some frames of your animation to achieve an effect of speeding up. Or display a frame of your animation for several frames to achieve a slow down. Something in the like of
GEO`padzero(5,1+(($F-1)*chop(“/ch/music/OUT_SPEED”))%25)`.bgeo
where OUT_SPEED is a chop node that computes your “speed”.
–
Anyway, it's just simple math, when you want your animation to look “slower” you display a frame of it for more than one frame, and if you want it “faster” you just skip some frames. But be aware, that it has its limitations. Outside certain bounds it might look really cruel (Flickering, shutter effects). Like the effect when you watch a car passing by through a fence, at the right speed it seems the tires are rotating backwards….
If you can't script/program it, it's no good at all !
-
- pclaes
- Member
- 257 posts
- Joined: Nov. 2007
- Offline
If your point count does not change:
25 frames is not that much, the above is good info, but do the old blendshape blend between current and next frame (I tink timewarp can do it too) to get some interpolation, otherwise when the bird is flying realy slow you will get popping.
25 frames is not that much, the above is good info, but do the old blendshape blend between current and next frame (I tink timewarp can do it too) to get some interpolation, otherwise when the bird is flying realy slow you will get popping.
Cg Supervisor | Effects Supervisor | Expert Technical Artist at Infinity Ward
https://www.linkedin.com/in/peter-claes-10a4854/ [www.linkedin.com]
https://www.linkedin.com/in/peter-claes-10a4854/ [www.linkedin.com]
-
- WhoDjini
- Member
- 94 posts
- Joined: Dec. 2008
- Offline
-
- pclaes
- Member
- 257 posts
- Joined: Nov. 2007
- Offline
yep, pretty much, or 1 file node and branching off a timeshift $F+1.
Cg Supervisor | Effects Supervisor | Expert Technical Artist at Infinity Ward
https://www.linkedin.com/in/peter-claes-10a4854/ [www.linkedin.com]
https://www.linkedin.com/in/peter-claes-10a4854/ [www.linkedin.com]
-
- tamte
- Member
- 9374 posts
- Joined: July 2007
- Offline
the easiest way would be
file SOP
|
timeblend SOP (set limits if you wish)
|
timeshift SOP
then just animate Frame Parameter on timeshift SOP (make sure to uncheck Integer Frames Parameter)
and it will smoothly retime your animation as you wish
(of course point count for all frames has to be the same)
file SOP
|
timeblend SOP (set limits if you wish)
|
timeshift SOP
then just animate Frame Parameter on timeshift SOP (make sure to uncheck Integer Frames Parameter)
and it will smoothly retime your animation as you wish
(of course point count for all frames has to be the same)
Tomas Slancik
CG Supervisor
Framestore, NY
CG Supervisor
Framestore, NY
-
- aplink
- Member
- 365 posts
- Joined: April 2008
- Offline
-
- aplink
- Member
- 365 posts
- Joined: April 2008
- Offline
tamte
the easiest way would be
file SOP
|
timeblend SOP (set limits if you wish)
|
timeshift SOP
then just animate Frame Parameter on timeshift SOP (make sure to uncheck Integer Frames Parameter)
and it will smoothly retime your animation as you wish
(of course point count for all frames has to be the same)
Can you give me an example expression for the Frame Para on timeshift sop ? for faster and slower ? Thanks.
-
- tamte
- Member
- 9374 posts
- Joined: July 2007
- Offline
it simply controls Frame you want to get from your animation
so if you animate it with $F expression it will play at normal speed
$F*2 will play twice as fast
you can use float values like $F*1.5 will interpolate input geometry to play smoothly at 1.5 speed
$F/2 will play 3 times slower and so on
you can directly animate that parameter to get nonlinear retiming
be sure to clamp this value to range of your sequence or specify this range in TimeBlend SOP
or you can use modulo to limit it to get repeated animation like if your sequence is 0-24 then $F*2%25 will play twice as fast and will repeat your input animation forever
and so on
so if you animate it with $F expression it will play at normal speed
$F*2 will play twice as fast
you can use float values like $F*1.5 will interpolate input geometry to play smoothly at 1.5 speed
$F/2 will play 3 times slower and so on
you can directly animate that parameter to get nonlinear retiming
be sure to clamp this value to range of your sequence or specify this range in TimeBlend SOP
or you can use modulo to limit it to get repeated animation like if your sequence is 0-24 then $F*2%25 will play twice as fast and will repeat your input animation forever
and so on
Tomas Slancik
CG Supervisor
Framestore, NY
CG Supervisor
Framestore, NY
-
- aplink
- Member
- 365 posts
- Joined: April 2008
- Offline
thank you very much again,
I noticed frames are skipping as i increase the numbers in the $F expression as the speed is getting faster but with flickering images.
How can i change the animation with smooth movement w/o flickering, possibly even w/o blurring effect.
And, after that i still can adjust the speed in the MPlay.
I was wondering what would be better, adjusting the speed in the MPLay or using your method or both for the next phase of my project. Because i believe I need to composite the animation w music and eventually exporting that to After Effect and FinalCut Pro to complete my movie.
Would you advise me the direction in general?
By the way, some people told me Final Cut Pro is not really user friendly.
Would you suggest any other better option? May be Conversetchion ?
thank you very much in advance.
Steve
I noticed frames are skipping as i increase the numbers in the $F expression as the speed is getting faster but with flickering images.
How can i change the animation with smooth movement w/o flickering, possibly even w/o blurring effect.
And, after that i still can adjust the speed in the MPlay.
I was wondering what would be better, adjusting the speed in the MPLay or using your method or both for the next phase of my project. Because i believe I need to composite the animation w music and eventually exporting that to After Effect and FinalCut Pro to complete my movie.
Would you advise me the direction in general?
By the way, some people told me Final Cut Pro is not really user friendly.
Would you suggest any other better option? May be Conversetchion ?
thank you very much in advance.
Steve
-
- Quick Links



