Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2011-11-02 22:20:53 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2011-11-02 22:20:53 +0400
commit97a0ae3e1b7eea3c069da8c6d3c7a3535734059d (patch)
tree139a1b118140779120ed16c45ed319588596477e /source/blender/editors/space_view3d/space_view3d.c
parenta59f7e02f8c8b2527e6a23e440ca61a9b9992373 (diff)
RenderEngine api: support for viewport rendering, details here:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/RenderEngineAPI * This adds a Rendered draw type in the 3D view, only available when the render engine implements the view_draw callback. * 3D view now stores a pointer to a RenderEngine. * view_draw() callback will do OpenGL drawing instead of the viewport. * view_update() callback is called after depsgraph updates.
Diffstat (limited to 'source/blender/editors/space_view3d/space_view3d.c')
-rw-r--r--source/blender/editors/space_view3d/space_view3d.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index f868cda485f..ef806cb8881 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -56,6 +56,7 @@
#include "WM_api.h"
#include "WM_types.h"
+#include "RE_engine.h"
#include "RNA_access.h"
@@ -344,6 +345,9 @@ static SpaceLink *view3d_duplicate(SpaceLink *sl)
v3do->lay= v3dn->localvd->lay;
v3do->lay &= 0xFFFFFF;
}
+
+ if(v3dn->drawtype == OB_RENDER)
+ v3dn->drawtype = OB_SOLID;
/* copy or clear inside new stuff */
@@ -549,6 +553,9 @@ static void view3d_main_area_free(ARegion *ar)
if(rv3d->ri) {
// XXX BIF_view3d_previewrender_free(rv3d);
}
+
+ if(rv3d->render_engine)
+ RE_engine_free(rv3d->render_engine);
if(rv3d->depths) {
if(rv3d->depths->depths) MEM_freeN(rv3d->depths->depths);
@@ -573,6 +580,7 @@ static void *view3d_main_area_duplicate(void *poin)
new->depths= NULL;
new->ri= NULL;
+ new->render_engine= NULL;
new->gpd= NULL;
new->sms= NULL;
new->smooth_timer= NULL;