Keep active layer when setting up tracking scene

When you hit "setup tracking scene" in MCE, the active layer usually switches
to the layer where the ground has been created, thus he shadow layer.

New objects are created or appended on that layer which means they will be
default be rendered as shadows only. This behaviour requires muscle memory
and is confusing for new users. This patch is changing the behaviour in a
way that the active layer is remembered from before setting up the scene.

Patch by gottfried, thanks!

Reviewers: sebastian_k, sergey

Differential Revision: https://developer.blender.org/D574
This commit is contained in:
Sergey Sharybin 2014-06-02 12:46:55 +06:00
parent 7378aac2cb
commit 559e3db792

@ -856,6 +856,9 @@ class CLIP_OT_setup_tracking_scene(Operator):
scene.layers = self._mergeLayers(scene.layers, all_layers)
def execute(self, context):
scene = context.scene
current_active_layer = scene.active_layer
self._setupScene(context)
self._setupWorld(context)
self._setupCamera(context)
@ -864,6 +867,10 @@ class CLIP_OT_setup_tracking_scene(Operator):
self._setupNodes(context)
self._setupObjects(context)
# Active layer has probably changed, set it back to the original value.
# NOTE: The active layer is always true.
scene.layers[current_active_layer] = True
return {'FINISHED'}