[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [34696] trunk/blender/source/blender: Bugfix 25965
Ton Roosendaal
ton at blender.org
Mon Feb 7 19:09:29 CET 2011
Revision: 34696
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=34696
Author: ton
Date: 2011-02-07 18:09:27 +0000 (Mon, 07 Feb 2011)
Log Message:
-----------
Bugfix 25965
New "auto render" now prevents calling anim-updates, that's
not needed (and popped back transformed keyed objects).
Modified Paths:
--------------
trunk/blender/source/blender/editors/render/render_internal.c
trunk/blender/source/blender/editors/space_node/node_edit.c
trunk/blender/source/blender/makesdna/DNA_scene_types.h
trunk/blender/source/blender/render/intern/source/convertblender.c
Modified: trunk/blender/source/blender/editors/render/render_internal.c
===================================================================
--- trunk/blender/source/blender/editors/render/render_internal.c 2011-02-07 16:41:57 UTC (rev 34695)
+++ trunk/blender/source/blender/editors/render/render_internal.c 2011-02-07 18:09:27 UTC (rev 34696)
@@ -594,11 +594,15 @@
free_main(rj->main);
/* else the frame will not update for the original value */
- ED_update_for_newframe(G.main, rj->scene, rj->win->screen, 1);
+ if(!(rj->scene->r.scemode & R_NO_FRAME_UPDATE))
+ ED_update_for_newframe(G.main, rj->scene, rj->win->screen, 1);
/* XXX above function sets all tags in nodes */
ntreeClearTags(rj->scene->nodetree);
+ /* potentially set by caller */
+ rj->scene->r.scemode &= ~R_NO_FRAME_UPDATE;
+
if(rj->srl) {
NodeTagIDChanged(rj->scene->nodetree, &rj->scene->id);
WM_main_add_notifier(NC_NODE|NA_EDITED, rj->scene);
Modified: trunk/blender/source/blender/editors/space_node/node_edit.c
===================================================================
--- trunk/blender/source/blender/editors/space_node/node_edit.c 2011-02-07 16:41:57 UTC (rev 34695)
+++ trunk/blender/source/blender/editors/space_node/node_edit.c 2011-02-07 18:09:27 UTC (rev 34696)
@@ -2178,6 +2178,9 @@
RNA_string_set(&op_ptr, "layer", srl->name);
RNA_string_set(&op_ptr, "scene", sce->id.name+2);
+ /* to keep keypositions */
+ sce->r.scemode |= R_NO_FRAME_UPDATE;
+
WM_operator_name_call(C, "RENDER_OT_render", WM_OP_INVOKE_DEFAULT, &op_ptr);
WM_operator_properties_free(&op_ptr);
Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h 2011-02-07 16:41:57 UTC (rev 34695)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h 2011-02-07 18:09:27 UTC (rev 34696)
@@ -923,7 +923,7 @@
#define R_COMP_FREE 0x0800
#define R_NO_IMAGE_LOAD 0x1000
#define R_NO_TEX 0x2000
-/*#define R_STAMP_INFO 0x4000 deprecated */
+#define R_NO_FRAME_UPDATE 0x4000
#define R_FULL_SAMPLE 0x8000
/* #define R_DEPRECATED 0x10000 */
/* #define R_RECURS_PROTECTION 0x20000 */
Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c 2011-02-07 16:41:57 UTC (rev 34695)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c 2011-02-07 18:09:27 UTC (rev 34696)
@@ -4911,7 +4911,7 @@
lay &= 0xFF000000;
/* applies changes fully */
- if((re->r.scemode & R_PREVIEWBUTS)==0)
+ if((re->r.scemode & (R_NO_FRAME_UPDATE|R_PREVIEWBUTS))==0)
scene_update_for_newframe(re->main, re->scene, lay);
/* if no camera, viewmat should have been set! */
More information about the Bf-blender-cvs
mailing list