diff --git a/pype/plugins/nukestudio/publish/collect_handles.py b/pype/plugins/nukestudio/publish/collect_handles.py index 03652989b8..ed13691daf 100644 --- a/pype/plugins/nukestudio/publish/collect_handles.py +++ b/pype/plugins/nukestudio/publish/collect_handles.py @@ -32,13 +32,18 @@ class CollectClipHandles(api.ContextPlugin): if instance.data.get("main"): name = instance.data["asset"] if assets_shared.get(name): - self.log.debug("Adding to shared assets: `{}`".format( - instance.data["name"])) - assets_shared[name].update({ - "handles": handles, - "handleStart": handle_start, - "handleEnd": handle_end - }) + asset_shared = assets_shared.get(name) + else: + asset_shared = assets_shared[name] + + self.log.debug("Adding to shared assets: `{}`".format( + instance.data["name"])) + asset_shared.update({ + "handles": handles, + "handleStart": handle_start, + "handleEnd": handle_end + }) + for instance in filtered_instances: if not instance.data.get("main") and not instance.data.get("handleTag"): diff --git a/pype/plugins/nukestudio/publish/collect_hierarchy_context.py b/pype/plugins/nukestudio/publish/collect_hierarchy_context.py index fd646451b6..28b007b109 100644 --- a/pype/plugins/nukestudio/publish/collect_hierarchy_context.py +++ b/pype/plugins/nukestudio/publish/collect_hierarchy_context.py @@ -145,22 +145,27 @@ class CollectHierarchyInstance(pyblish.api.ContextPlugin): instance.data["parents"] = parents # adding to asset shared dict + self.log.debug("__ assets_shared: {}".format(assets_shared)) if assets_shared.get(asset): self.log.debug("Adding to shared assets: `{}`".format( - asset)) - assets_shared[asset].update({ - "asset": instance.data["asset"], - "hierarchy": hierarchy, - "parents": parents, - "tasks": instance.data["tasks"] - }) + instance.data["name"])) + asset_shared = assets_shared.get(asset) + else: + asset_shared = assets_shared[asset] - # adding frame start if any on instance - start_frame = instance.data.get("frameStart") - if start_frame: - assets_shared[asset].update({ - "frameStart": start_frame - }) + asset_shared.update({ + "asset": instance.data["asset"], + "hierarchy": hierarchy, + "parents": parents, + "tasks": instance.data["tasks"] + }) + + # adding frame start if any on instance + start_frame = instance.data.get("frameStart") + if start_frame: + asset_shared.update({ + "frameStart": start_frame + }) diff --git a/pype/plugins/nukestudio/publish/collect_shots.py b/pype/plugins/nukestudio/publish/collect_shots.py index 26a4c7fb6b..506020bbc3 100644 --- a/pype/plugins/nukestudio/publish/collect_shots.py +++ b/pype/plugins/nukestudio/publish/collect_shots.py @@ -25,50 +25,55 @@ class CollectShots(api.ContextPlugin): ) continue - # Collect data. - data = {} - for key, value in instance.data.iteritems(): - data[key] = value + if instance.data.get("main"): + # Collect data. + data = {} + for key, value in instance.data.iteritems(): + if key in "main": + continue + data[key] = value - data["family"] = "shot" - data["families"] = [] - data["frameStart"] = instance.data.get("frameStart", 1) + data["family"] = "shot" + data["families"] = [] + data["frameStart"] = instance.data.get("frameStart", 1) - data["subset"] = data["family"] + "Main" + data["subset"] = data["family"] + "Main" - data["name"] = data["subset"] + "_" + data["asset"] + data["name"] = data["subset"] + "_" + data["asset"] - data["label"] = data["asset"] + " - " + data["subset"] + " - tasks: {} - assetbuilds: {}".format( - data["tasks"], [x["name"] for x in data.get("assetbuilds", [])] - ) + data["label"] = data["asset"] + " - " + data["subset"] + " - tasks: {} - assetbuilds: {}".format( + data["tasks"], [x["name"] for x in data.get("assetbuilds", [])] + ) - # Get handles. - data["handleStart"] = instance.data["handleStart"] - data["handleEnd"] = instance.data["handleEnd"] + # Get handles. + data["handleStart"] = instance.data["handleStart"] + data["handleEnd"] = instance.data["handleEnd"] - # Frame-ranges with handles. - data["sourceInH"] = data["sourceIn"] - data["handleStart"] - data["sourceOutH"] = data["sourceOut"] + data["handleEnd"] + # Frame-ranges with handles. + data["sourceInH"] = data["sourceIn"] - data["handleStart"] + data["sourceOutH"] = data["sourceOut"] + data["handleEnd"] - # Get timeline frames. - data["timelineIn"] = int(data["item"].timelineIn()) - data["timelineOut"] = int(data["item"].timelineOut()) + # Get timeline frames. + data["timelineIn"] = int(data["item"].timelineIn()) + data["timelineOut"] = int(data["item"].timelineOut()) - # Frame-ranges with handles. - data["timelineInHandles"] = data["timelineIn"] - data["timelineInHandles"] -= data["handleStart"] - data["timelineOutHandles"] = data["timelineOut"] - data["timelineOutHandles"] += data["handleEnd"] + # Frame-ranges with handles. + data["timelineInHandles"] = data["timelineIn"] + data["timelineInHandles"] -= data["handleStart"] + data["timelineOutHandles"] = data["timelineOut"] + data["timelineOutHandles"] += data["handleEnd"] - # Creating comp frame range. - data["endFrame"] = ( - data["frameStart"] + (data["sourceOut"] - data["sourceIn"]) - ) + # Creating comp frame range. + data["endFrame"] = ( + data["frameStart"] + (data["sourceOut"] - data["sourceIn"]) + ) - # Get fps. - sequence = instance.context.data["activeSequence"] - data["fps"] = sequence.framerate() + # Get fps. + sequence = instance.context.data["activeSequence"] + data["fps"] = sequence.framerate() - # Create instance. - self.log.debug("Creating instance with: {}".format(data["name"])) - instance.context.create_instance(**data) + # Create instance. + self.log.debug("Creating instance with: {}".format(data["name"])) + instance.context.create_instance(**data) + + self.log.debug("_ context: {}".format(context[:]))