I want to render every Nth frame of an animation, in this case every 12th frame. This way I can play back the animation at 2fps and see if everything is going correctly.

I'm a real novice with Blender Python and cobbled this together:

import bpy

for f in range(startframe,endframe,NthFrame):
    bpy.context.scene.frame_current = f
    bpy.data.images['Render Result'].save_render(filepath="" + str(f) + '.png') 

This kind of works, the right images are rendered and saved. However it completely freezes up Blender, and after about an hour it crashes on windows due to being unresponsive I guess. How can I fix this? Preferably I'd like it to work like rendering an animation normally works, i.e. being able to still use Blender and seeing the progress of each rendered frame.


It's possible to do this without python by changing the Frame step in Render settings > Dimensions > Frame range:

enter image description here

  • 1
    $\begingroup$ Can't believe I missed that option. Works much better. $\endgroup$
    – cybrbeast
    Mar 18 '14 at 9:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.