diff options
author | Ton Roosendaal <ton@blender.org> | 2011-02-07 19:41:57 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2011-02-07 19:41:57 +0300 |
commit | 5c421c328e963fe27725e6961e60de74cca87c7f (patch) | |
tree | 040cbd47b5368116f1fdcdb945e7d2a75c099569 /source/blender/editors/transform | |
parent | 831ce612e95c7addc387a398e4952bef31752377 (diff) |
Todo/feature request
When using masks or other simple 3D elements in composites, doing
a layer re-rendering on a node is a bit clumsy all the time.
This commit does two things to help:
- new hotkey "Z" in node editor automatically finds render layer
that changed and re-renders it + composites
- option "Auto Render" does same, but then after every transform
edit in 3D window
The latter is experimental; real & proper system for this requires
full threaded render support (like previews). But it works!
Demo file:
http://download.blender.org/demo/test/auto_composite.blend
Important fix:
After any render, all the render layers were tagged "changed", which
caused any edit to first totally recomposte everthing. Now it only
composites changes.
Implementation notes
- DAG scene flush now sets 'changed' flags in render layer nodes
- Added notifier for 'transform finished' to trigger the update,
this is temporarily.
Diffstat (limited to 'source/blender/editors/transform')
-rw-r--r-- | source/blender/editors/transform/transform.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c index 2d541b63bd0..394dd433060 100644 --- a/source/blender/editors/transform/transform.c +++ b/source/blender/editors/transform/transform.c @@ -338,7 +338,7 @@ static void viewRedrawForce(const bContext *C, TransInfo *t) } } -static void viewRedrawPost(TransInfo *t) +static void viewRedrawPost(bContext *C, TransInfo *t) { ED_area_headerprint(t->sa, NULL); @@ -346,6 +346,10 @@ static void viewRedrawPost(TransInfo *t) /* if autokeying is enabled, send notifiers that keyframes were added */ if (IS_AUTOKEY_ON(t->scene)) WM_main_add_notifier(NC_ANIMATION|ND_KEYFRAME|NA_EDITED, NULL); + + /* XXX temp, first hack to get auto-render in compositor work (ton) */ + WM_event_add_notifier(C, NC_SCENE|ND_TRANSFORM_DONE, CTX_data_scene(C)); + } #if 0 // TRANSFORM_FIX_ME @@ -1817,7 +1821,7 @@ int transformEnd(bContext *C, TransInfo *t) postTrans(C, t); /* send events out for redraws */ - viewRedrawPost(t); + viewRedrawPost(C, t); /* Undo as last, certainly after special_trans_update! */ |