How To Change The Frame Rate Of My Animation?

I have a simple walk cycle which I created at 12fps but I’d like to now render it out at a higher frame rate e.g. 24fps. I can’t find how to do this. It looks like I ought to be able to use the Frame Rate, and “Time Remapping” doodads in the Render panel, but I can’t find the combination. The FPS and “/” seem to just calculate the final frame rate without remapping anything, but using the Time Remapping fields seems to mess up the timeline, with the start and end frames not changing (so they still show the 12fps values) but the current frame appears to use the ratio, so it’s running half way back down the timeline, if you see what I mean.

I presume this is pretty routine- wanting to output the same animation at different frame rates. How is it done?

May be other ways, but I would change your scene frame rate to 24fps, then in your action editor/dope sheet, make sure all your bones are visible then A (select all keyframes), and S2 to scale their frame range x2.

Surely I don’t have to rekey the entire thing? For one walk, that’s not a big deal but for a full complex animation, surely there must be a simpler way? And what are the time remapping controls for, if not what I want to do?

Time remapping is used to remap the LENGTH of an animation - Frame-Rate sets the frames per second. If you want to change the rate from 12 to 24 - simply change the Frame Rate. If you want to change the animation length to twice what it is - simply set the End to twice what it is. Then you can go to the Graph Editor for the armature in question, select F-curve Mode, select all the point and scale them (key sequence = s x 2), then you can grab them if need be and slide them along X or slide a precise amount (key sequence = g x 3 for example.) This is a good method if you have not spaced keyframes correctly or simply want to move a keyframe. You can of course always select just one or more points and grab it/them, then either drag it/them in the x axis or key a precise number of frames. you can use the same techniques to alter the keyframe y value, if, for example, you want a bone to rotate 10 rather than 5 degrees. This you can also do by going to the bone transform variable, key a new value and then RMB click the value and select Replace Keyframe/s.

See this: http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Output

I don’t want to remap things in the Graph Editor. I just want to have the animation run at the same speed but render double (for example) the number of frames to video. Surely this can easily be done without remapping every keyframe?

The Time Remapping doesn’t seem to make any sense. If I change it, the frame being played when I hit play desyncs to the timeline, so that it no longer loops around the specified start and end frames in the timeline, as if the ratio is being applied to the current frame but not everything else.

Post your blend file or a subset of it showing the error - it seems like something is very wrong with it. I’ll take a look for you.

One thing on time remapping, if you set the old rate to 50 and the new rate to 100 it will run at half speed. If you set the old to 100 and the new to 50 it will run at twice speed. If your blend is not doing this you have some other issues somewhere.

Next thing to try - open a new blend file and append the objects from your first into it and see if it plays properly. I have just done various FPS rates and Time Mappings on one of my blends and it behaves as I would expect, e.g. if I set the FPS to 12 from 24 and the remap to 100:50, it runs at the same speed but jerky as its now effectively 12 fps at the original speed. So the animation lasts as long but at a more “stuttering” resolution.

Let me know how you get on.

Well here’s a simple file that shows it.

cube0100.blend (536 KB)

Its all down to your time mapping. Your start frame is 11 and time mapping is 100:200 or 1:2, if you like. So your effective start from is 1:2 x 11 or 5.5 gets rounded to 6 and your end frame is 1:2 x 40 or 20, that’s why it only runs between frames 6 and 20. I suspect you need to find an alternative way of doing what you want to do - like moving your keyframes in Graph Editor.

You can see the effect by clicking “Jump-to-start frame” icon and see where the green line is - stretch the timeline out - it’s on 6 and then click “Jump to-end” icon and it rests on 20. Try setting Time Mapping to 200:100, your effective start frame will be 22 and your effective end frame will be 80. The manual pages are a little skinny for this topic - putting in mildly, so I am afraid there is nothing I can suggest other than simple keyframe moves in Graph Editor, which you said you did not want to do.

Clock.

Well, I’m new to this thing. But it seems to me that a lot of people would want to save time by rendering out tests at a lower frame rate than their finished animation, and I’m surprised there’s no straightforward way to do it. That is, the video framerate rendering out ought to be distinct from the timing of animations themselves, surely?

Yep i’ll go along with that, with a “but” of course. What I do is to set up the animation at an initial frame rate of 24 FPS, or whatever i want the finished result to be, then slow it down to 12, or less, to see what’s going on. I do not change the Time Mapping or animation length. Sorry if this is like “closing the stable door after the horse has bolted”, in your case. In short - set up the timeline as you want it to be when finished, then slow it down to see how it looks - don’t do it slow then try to speed it up once you are satisfied with it and don’t use Time Mapping to speed it up as this affects your start and end frame positions. To be honest I’m not exactly sure why this facility is there in the first place! Probably to trip up unwary users…

Cheers and sorry I could not be of more help. Clock.

Hmm, so I learn today that if I change to a different frame rate, all my dynamics- soft body physics, hair dynamics- change as well. It seems Blender doesn’t use an “absolute time” scale to calculate them, but is at the code level keyed to frames rather than time. This makes things… interesting. I’d rather do test renders at a lower frame rate (e.g. 12 fps) and then just do a final render at the higher one (since rendering takes so much time) but then all the dynamics will change…

You can always “bake” the bits you are happy with as another level of complexity… Hope you have a solution now.

Cheers. Clock.

The proper way to think about it, I think, is this:

  • Frame Rate is simply what’s appropriate for the output-mechanism that you will be using. For example, cinematic film runs at 24 fps. Analog TV sets ran at 30 fps or 25 fps and were interlaced. You therefore can control the X,Y size of the output bitmap, its pixel density, whether or not to interlace, and, the frame-rate. All of these must be correct for the target device.
  • Time Mapping determines how fast the action takes place, and can even be used to cause the action to run backwards. This represents the flow of time in the imaginary world of the animation itself, e.g. “how many wall-clock seconds should ‘one second’s worth of action’ take?”

If you were producing the same show both for cinematic film and for television, you would generate two maybe three outputs, one for each target-device. Meanwhile, the timing of the show itself would not change. If you put all of these outputs side-by-side on their respective devices and played them together, you’d see “the same show” on each device, exactly in-sync, even though a differing number of images are being displayed per-second on each. (The objects depicted would also appear to be the same size, even though they occupy a different number of pixels, the pixels may be square or rectangular, and so forth.)

If you do want the action to “suddenly speed up or slow down,” as is fairly common in some styles of movies or shows (e.g. to “slow-mo” the moment when the Hero punches the Bad Guy in the face …), you should do this by altering the time-mapping. The punch takes 1/2 second wall-time but you stretch it out to, say, five. Five seconds’ worth of images are produced, but the amount of movement of the objects in the frame, from frame to frame to frame, is one-tenth what it ordinarily would be. Thus, the computer will continue to produce clean, crisp images that are appropriate to the needs of the target device(s), which happen to depict action that speeds up, slows down, runs back-and-forth, and so on.

Remap time as follows: Set old framerate/new framerate in Time Remapping settings (Old:New). Set new Frame Rate. Divide the start/end frame numbers by old framerate then multiply with new framerate to get your new frame range.

If you want to remap rendering of a 70 frame animation from 24fps to 12fps:

  • Time Remapping set Old:24 New:12.

  • Frame Rate set to 12fps (select Custom in dropdown menu to set this number manually).

  • Divide the beginning and end frame numbers by the old framerate (24) then multiply with the new (12) to get your new start/end numbers. If the original frame range is 1 to 70 you would leave Start at 1 and set End to 35.

-LP

Thanks Sundial and Larry - now I understand what was happening rather than me just accept it. I am going to produce some slo-mo animations to get it into my old head, hopefully it will then stay there!

Cheers. Clock.

I have to do this a lot – rendering at lower frame rates to preview animation. My workflow is to work in the target frame rate. Then I use the Frame Step option to skip frames (My target is 30 fps, so I often set this to 3 for 10fps or 6 for 5fps for previews).

The frame rate actually has no real impact on the output except the timing used in the video stream. So, I set that to “Custom” and then type in 10 or 6 fps in those cases.

I think this is probably simpler than using the Time Remapping (although I didn’t know about that feature, so it’s interesting to discover!).

Quite useful for checking Freestyle animation, because those frames are SLOW to render. I also often turn off Freestyle, anti-aliasing, and motion blur as alternative ways to get quicker renders.