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.


1 Answer 1


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

enter image description here

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

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .