diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-14 16:18:42 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-14 16:18:42 +0400 |
commit | d56e77ada59050d02a03b44e9d5a7b122683615f (patch) | |
tree | 0c8fbdad67b170eb7c2d9abb360657ee05181c1e /source/blender/editors/space_node | |
parent | e2cda811ac2b8bd054afe2d7e0a0c760de96080c (diff) |
Keying Screen node from tomato branch
Merge Keying Screen node developed in tomato branch into trunk.
This node is aimed to make dealing with non-even greenscreens better
by generating gradiented image which could be used a input for keyer
nodes.
Based on building voronoi diagram using motion tracking markers as
sites position and average pattern color as color for that site.
Pretty straignforward node, some documentation is there
http://wiki.blender.org/index.php/User:Nazg-gul/Keying#Screen_color
Diffstat (limited to 'source/blender/editors/space_node')
-rw-r--r-- | source/blender/editors/space_node/drawnode.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/source/blender/editors/space_node/drawnode.c b/source/blender/editors/space_node/drawnode.c index e6549034a85..a42bf062b12 100644 --- a/source/blender/editors/space_node/drawnode.c +++ b/source/blender/editors/space_node/drawnode.c @@ -2425,6 +2425,24 @@ static void node_composit_buts_mask(uiLayout *layout, bContext *C, PointerRNA *p } +static void node_composit_buts_keyingscreen(uiLayout *layout, bContext *C, PointerRNA *ptr) +{ + bNode *node= ptr->data; + + uiTemplateID(layout, C, ptr, "clip", NULL, NULL, NULL); + + if (node->id) { + MovieClip *clip = (MovieClip *) node->id; + uiLayout *col; + PointerRNA tracking_ptr; + + RNA_pointer_create(&clip->id, &RNA_MovieTracking, &clip->tracking, &tracking_ptr); + + col = uiLayoutColumn(layout, 1); + uiItemPointerR(col, ptr, "tracking_object", &tracking_ptr, "objects", "", ICON_OBJECT_DATA); + } +} + /* only once called */ static void node_composit_set_butfunc(bNodeType *ntype) { @@ -2617,6 +2635,9 @@ static void node_composit_set_butfunc(bNodeType *ntype) case CMP_NODE_MASK: ntype->uifunc= node_composit_buts_mask; break; + case CMP_NODE_KEYINGSCREEN: + ntype->uifunc = node_composit_buts_keyingscreen; + break; default: ntype->uifunc = NULL; } |