diff options
author | Ton Roosendaal <ton@blender.org> | 2008-01-31 18:35:24 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2008-01-31 18:35:24 +0300 |
commit | 90f8fb733bfed6cd1b56b2fed30c4325c5c65cf0 (patch) | |
tree | 104e286770456a335ddf5966a5697a119b533b3d /source/blender/src/editnode.c | |
parent | 134fdd6d5a2ef07025a58325bc10efe62a87b269 (diff) |
Fix: render could crash when you enable 'do composite' without having
nodes in scene.
Feature: SHIFT+R in compositor reloads all full sample buffers, composites
and merges with filter. (ALso in Node menu).
Diffstat (limited to 'source/blender/src/editnode.c')
-rw-r--r-- | source/blender/src/editnode.c | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/source/blender/src/editnode.c b/source/blender/src/editnode.c index 281db67939f..8fc11c68891 100644 --- a/source/blender/src/editnode.c +++ b/source/blender/src/editnode.c @@ -2012,6 +2012,22 @@ void node_read_renderlayers(SpaceNode *snode) snode_handle_recalc(snode); } +void node_read_fullsamplelayers(SpaceNode *snode) +{ + Render *re= RE_NewRender(G.scene->id.name); + + waitcursor(1); + + BIF_init_render_callbacks(re, 1); + RE_MergeFullSample(re, G.scene, snode->nodetree); + BIF_end_render_callbacks(); + + allqueue(REDRAWNODE, 1); + allqueue(REDRAWIMAGE, 1); + + waitcursor(0); +} + /* called from header_info, when deleting a scene * goes over all scenes other than the input, checks if they have * render layer nodes referencing the to-be-deleted scene, and @@ -2337,7 +2353,12 @@ void winqreadnodespace(ScrArea *sa, void *spacedata, BWinEvent *evt) case RKEY: if(G.qual==LR_CTRLKEY) { node_rename(snode); - } else{ + } + else if(G.qual==LR_SHIFTKEY) { + if(okee("Read saved Full Sample Layers")) + node_read_fullsamplelayers(snode); + } + else { if(okee("Read saved Render Layers")) node_read_renderlayers(snode); } |