== Render ==

Commit patch #7788, allow to set the render step, so it's
possible make render every N frames only.

The step is change in Scene buttons (F10), below start and
end frame buttons.

Also add a command line options (-j), so it's possible to
overwrite the file step (useful for renderfarm).

[ Brecht, this work with OpenGL renders and simulated
  the skipped frames, please double check ]
This commit is contained in:
2008-09-19 21:57:15 +00:00
parent 650ae3b4e6
commit 4f737bafa7
10 changed files with 72 additions and 15 deletions

View File

@@ -2559,10 +2559,12 @@ static void do_write_image_or_movie(Render *re, Scene *scene, bMovieHandle *mh)
}
/* saves images to disk */
void RE_BlenderAnim(Render *re, Scene *scene, int sfra, int efra)
void RE_BlenderAnim(Render *re, Scene *scene, int sfra, int efra, int tfra)
{
bMovieHandle *mh= BKE_get_movie_handle(scene->r.imtype);
unsigned int lay;
int cfrao= scene->r.cfra;
int nfra;
/* do not fully call for each frame, it initializes & pops output window */
if(!render_initialize_from_scene(re, scene, 0))
@@ -2591,12 +2593,27 @@ void RE_BlenderAnim(Render *re, Scene *scene, int sfra, int efra)
}
}
} else {
for(scene->r.cfra= sfra; scene->r.cfra<=efra; scene->r.cfra++) {
for(nfra= sfra, scene->r.cfra= sfra; scene->r.cfra<=efra; scene->r.cfra++) {
char name[FILE_MAX];
/* only border now, todo: camera lens. (ton) */
render_initialize_from_scene(re, scene, 1);
if(nfra!=scene->r.cfra) {
/*
* Skip this frame, but update for physics and particles system.
* From convertblender.c:
* in localview, lamps are using normal layers, objects only local bits.
*/
if(scene->lay & 0xFF000000)
lay= scene->lay & 0xFF000000;
else
lay= scene->lay;
scene_update_for_newframe(scene, lay);
continue;
}
if (scene->r.mode & (R_NO_OVERWRITE | R_TOUCH) ) {
BKE_makepicstring(name, scene->r.pic, scene->r.cfra, scene->r.imtype);
}
@@ -2626,6 +2643,7 @@ void RE_BlenderAnim(Render *re, Scene *scene, int sfra, int efra)
break;
}
nfra+= tfra;
}
}