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:
Diffstat (limited to 'source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc')
-rw-r--r--source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc b/source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc
index e4e37f630a2..e835ee9e721 100644
--- a/source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_keyingscreen.cc
@@ -6,12 +6,14 @@
*/
#include "DNA_movieclip_types.h"
+#include "DNA_tracking_types.h"
#include "BLI_math_base.h"
#include "BLI_math_color.h"
#include "BKE_context.h"
#include "BKE_lib_id.h"
+#include "BKE_tracking.h"
#include "RNA_access.h"
#include "RNA_prototypes.h"
@@ -38,8 +40,15 @@ static void node_composit_init_keyingscreen(const bContext *C, PointerRNA *ptr)
node->storage = data;
const Scene *scene = CTX_data_scene(C);
- node->id = (ID *)scene->clip;
- id_us_plus(node->id);
+ if (scene->clip) {
+ MovieClip *clip = scene->clip;
+
+ node->id = &clip->id;
+ id_us_plus(&clip->id);
+
+ const MovieTrackingObject *tracking_object = BKE_tracking_object_get_active(&clip->tracking);
+ BLI_strncpy(data->tracking_object, tracking_object->name, sizeof(data->tracking_object));
+ }
}
static void node_composit_buts_keyingscreen(uiLayout *layout, bContext *C, PointerRNA *ptr)