[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41463] trunk/blender/source/blender: RenderEngine: add .is_animation and .is_preview properties to detect if it 's
Brecht Van Lommel
brechtvanlommel at pandora.be
Wed Nov 2 14:36:29 CET 2011
Revision: 41463
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41463
Author: blendix
Date: 2011-11-02 13:36:28 +0000 (Wed, 02 Nov 2011)
Log Message:
-----------
RenderEngine: add .is_animation and .is_preview properties to detect if it's
an animation or preview render that is being done.
Modified Paths:
--------------
trunk/blender/source/blender/makesrna/intern/rna_render.c
trunk/blender/source/blender/render/extern/include/RE_engine.h
trunk/blender/source/blender/render/intern/include/render_types.h
trunk/blender/source/blender/render/intern/source/external_engine.c
trunk/blender/source/blender/render/intern/source/pipeline.c
Modified: trunk/blender/source/blender/makesrna/intern/rna_render.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_render.c 2011-11-02 12:18:51 UTC (rev 41462)
+++ trunk/blender/source/blender/makesrna/intern/rna_render.c 2011-11-02 13:36:28 UTC (rev 41463)
@@ -251,9 +251,16 @@
prop= RNA_def_string(func, "message", "", 0, "Report Message", "");
RNA_def_property_flag(prop, PROP_REQUIRED);
- /* registration */
RNA_define_verify_sdna(0);
+ prop= RNA_def_property(srna, "is_animation", PROP_BOOLEAN, PROP_NONE);
+ RNA_def_property_boolean_sdna(prop, NULL, "flag", RE_ENGINE_ANIMATION);
+
+ prop= RNA_def_property(srna, "is_preview", PROP_BOOLEAN, PROP_NONE);
+ RNA_def_property_boolean_sdna(prop, NULL, "flag", RE_ENGINE_PREVIEW);
+
+ /* registration */
+
prop= RNA_def_property(srna, "bl_idname", PROP_STRING, PROP_NONE);
RNA_def_property_string_sdna(prop, NULL, "type->idname");
RNA_def_property_flag(prop, PROP_REGISTER|PROP_NEVER_CLAMP);
Modified: trunk/blender/source/blender/render/extern/include/RE_engine.h
===================================================================
--- trunk/blender/source/blender/render/extern/include/RE_engine.h 2011-11-02 12:18:51 UTC (rev 41462)
+++ trunk/blender/source/blender/render/extern/include/RE_engine.h 2011-11-02 13:36:28 UTC (rev 41463)
@@ -46,11 +46,16 @@
/* External Engine */
+/* RenderEngineType.flag */
#define RE_INTERNAL 1
#define RE_GAME 2
#define RE_USE_PREVIEW 4
#define RE_USE_POSTPROCESS 8
+/* RenderEngine.flag */
+#define RE_ENGINE_ANIMATION 1
+#define RE_ENGINE_PREVIEW 2
+
extern ListBase R_engines;
typedef struct RenderEngineType {
@@ -70,6 +75,8 @@
typedef struct RenderEngine {
RenderEngineType *type;
+ int flag;
+
struct Render *re;
ListBase fullresult;
} RenderEngine;
Modified: trunk/blender/source/blender/render/intern/include/render_types.h
===================================================================
--- trunk/blender/source/blender/render/intern/include/render_types.h 2011-11-02 12:18:51 UTC (rev 41462)
+++ trunk/blender/source/blender/render/intern/include/render_types.h 2011-11-02 13:36:28 UTC (rev 41463)
@@ -601,6 +601,7 @@
#define R_NEED_TANGENT 16
#define R_BAKE_TRACE 32
#define R_BAKING 64
+#define R_ANIMATION 128
/* vlakren->flag (vlak = face in dutch) char!!! */
#define R_SMOOTH 1
Modified: trunk/blender/source/blender/render/intern/source/external_engine.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/external_engine.c 2011-11-02 12:18:51 UTC (rev 41462)
+++ trunk/blender/source/blender/render/intern/source/external_engine.c 2011-11-02 13:36:28 UTC (rev 41463)
@@ -265,6 +265,11 @@
engine = RE_engine_create(type);
engine->re= re;
+ if(re->flag & R_ANIMATION)
+ engine->flag |= RE_ENGINE_ANIMATION;
+ if(re->r.scemode & R_PREVIEWBUTS)
+ engine->flag |= RE_ENGINE_PREVIEW;
+
if((re->r.scemode & (R_NO_FRAME_UPDATE|R_PREVIEWBUTS))==0)
scene_update_for_newframe(re->main, re->scene, re->lay);
Modified: trunk/blender/source/blender/render/intern/source/pipeline.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/pipeline.c 2011-11-02 12:18:51 UTC (rev 41462)
+++ trunk/blender/source/blender/render/intern/source/pipeline.c 2011-11-02 13:36:28 UTC (rev 41463)
@@ -3085,6 +3085,8 @@
/* is also set by caller renderwin.c */
G.rendering= 1;
+ re->flag |= R_ANIMATION;
+
if(BKE_imtype_is_movie(scene->r.imtype))
if(!mh->start_movie(scene, &re->r, re->rectx, re->recty, re->reports))
G.afbreek= 1;
@@ -3193,6 +3195,8 @@
scene->r.cfra= cfrao;
+ re->flag &= ~R_ANIMATION;
+
/* UGLY WARNING */
G.rendering= 0;
}
More information about the Bf-blender-cvs
mailing list