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/space_node/node_ops.c | |
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/space_node/node_ops.c')
-rw-r--r-- | source/blender/editors/space_node/node_ops.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/editors/space_node/node_ops.c b/source/blender/editors/space_node/node_ops.c index 781682c9185..db5c493dcd9 100644 --- a/source/blender/editors/space_node/node_ops.c +++ b/source/blender/editors/space_node/node_ops.c @@ -78,6 +78,7 @@ void node_operatortypes(void) WM_operatortype_append(NODE_OT_read_renderlayers); WM_operatortype_append(NODE_OT_read_fullsamplelayers); + WM_operatortype_append(NODE_OT_render_changed); WM_operatortype_append(NODE_OT_backimage_move); WM_operatortype_append(NODE_OT_backimage_zoom); @@ -170,6 +171,8 @@ void node_keymap(struct wmKeyConfig *keyconf) WM_keymap_add_item(keymap, "NODE_OT_read_renderlayers", RKEY, KM_PRESS, KM_CTRL, 0); WM_keymap_add_item(keymap, "NODE_OT_read_fullsamplelayers", RKEY, KM_PRESS, KM_SHIFT, 0); + WM_keymap_add_item(keymap, "NODE_OT_render_changed", ZKEY, KM_PRESS, 0, 0); + transform_keymap_for_space(keyconf, keymap, SPACE_NODE); } |