[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [49277] trunk/blender/source/blender/ editors/render/render_opengl.c: Fix #32187: OpenGL preview does not take into account overwrite option
Sergey Sharybin
sergey.vfx at gmail.com
Fri Jul 27 10:58:34 CEST 2012
Revision: 49277
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49277
Author: nazgul
Date: 2012-07-27 08:58:34 +0000 (Fri, 27 Jul 2012)
Log Message:
-----------
Fix #32187: OpenGL preview does not take into account overwrite option
Modified Paths:
--------------
trunk/blender/source/blender/editors/render/render_opengl.c
Modified: trunk/blender/source/blender/editors/render/render_opengl.c
===================================================================
--- trunk/blender/source/blender/editors/render/render_opengl.c 2012-07-27 08:36:48 UTC (rev 49276)
+++ trunk/blender/source/blender/editors/render/render_opengl.c 2012-07-27 08:58:34 UTC (rev 49277)
@@ -476,6 +476,7 @@
int ok = 0;
const short view_context = (oglrender->v3d != NULL);
Object *camera = NULL;
+ int is_movie;
/* go to next frame */
if (CFRA < oglrender->nfra)
@@ -490,6 +491,21 @@
CFRA++;
}
+ is_movie = BKE_imtype_is_movie(scene->r.im_format.imtype);
+
+ if (!is_movie) {
+ BKE_makepicstring(name, scene->r.pic, oglrender->bmain->name, scene->r.cfra, scene->r.im_format.imtype, scene->r.scemode & R_EXTENSION, TRUE);
+
+ if ((scene->r.mode & R_NO_OVERWRITE) && BLI_exists(name)) {
+ printf("skipping existing frame \"%s\"\n", name);
+
+ /* go to next frame */
+ oglrender->nfra += scene->r.frame_step;
+
+ return 1;
+ }
+ }
+
/* update animated image textures for gpu, etc,
* call before BKE_scene_update_for_newframe so modifiers with textures don't lag 1 frame */
ED_image_update_frame(bmain, CFRA);
@@ -538,7 +554,7 @@
ibuf = ibuf_cpy;
}
- if (BKE_imtype_is_movie(scene->r.im_format.imtype)) {
+ if (is_movie) {
ok = oglrender->mh->append_movie(&scene->r, SFRA, CFRA, (int *)ibuf->rect,
oglrender->sizex, oglrender->sizey, oglrender->reports);
if (ok) {
@@ -547,7 +563,6 @@
}
}
else {
- BKE_makepicstring(name, scene->r.pic, oglrender->bmain->name, scene->r.cfra, scene->r.im_format.imtype, scene->r.scemode & R_EXTENSION, TRUE);
ok = BKE_imbuf_write_stamp(scene, camera, ibuf, name, &scene->r.im_format);
if (ok == 0) {
More information about the Bf-blender-cvs
mailing list