From 345601a79f9850ca83c47a890e1e5046fc7331af Mon Sep 17 00:00:00 2001 From: Simone Barbieri Date: Thu, 2 Jul 2020 15:23:20 +0100 Subject: [PATCH] Changed namespace formulation --- pype/hosts/blender/plugin.py | 15 ++++++++------- pype/plugins/blender/load/load_layout.py | 6 ++++-- pype/plugins/blender/load/load_model.py | 6 ++++-- pype/plugins/blender/load/load_rig.py | 6 ++++-- 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/pype/hosts/blender/plugin.py b/pype/hosts/blender/plugin.py index f0791c8eb6..33cccd7d5e 100644 --- a/pype/hosts/blender/plugin.py +++ b/pype/hosts/blender/plugin.py @@ -14,16 +14,17 @@ def asset_name( asset: str, subset: str, namespace: Optional[str] = None ) -> str: """Return a consistent name for an asset.""" - name = f"{asset}_{subset}" + name = f"{asset}" if namespace: - name = f"{namespace:0>2}:{name}" + name = f"{name}_{namespace}" + name = f"{name}_{subset}" return name -def asset_namespace( +def get_unique_number( asset: str, subset: str ) -> str: - """Return a unique namespace based on the asset name.""" + """Return a unique number based on the asset name.""" avalon_containers = [ c for c in bpy.data.collections if c.name == 'AVALON_CONTAINERS' @@ -35,11 +36,11 @@ def asset_namespace( c.name for c in loaded_assets ] count = 1 - name = f"{asset_name(asset, subset, str(count))}_CON" + name = f"{asset}_{count:0>2}_{subset}_CON" while name in collections_names: count += 1 - name = f"{asset_name(asset, subset, str(count))}_CON" - return str(count) + name = f"{asset}_{count:0>2}_{subset}_CON" + return f"{count:0>2}" def prepare_data(data, container_name): diff --git a/pype/plugins/blender/load/load_layout.py b/pype/plugins/blender/load/load_layout.py index e9e128bb7c..cfab5a207b 100644 --- a/pype/plugins/blender/load/load_layout.py +++ b/pype/plugins/blender/load/load_layout.py @@ -118,14 +118,16 @@ class BlendLayoutLoader(plugin.AssetLoader): lib_container = plugin.asset_name( asset, subset ) - namespace = namespace or plugin.asset_namespace( + unique_number = plugin.get_unique_number( asset, subset ) + namespace = namespace or f"{asset}_{unique_number}" container_name = plugin.asset_name( - asset, subset, namespace + asset, subset, unique_number ) container = bpy.data.collections.new(lib_container) + container.name = container_name blender.pipeline.containerise_existing( container, name, diff --git a/pype/plugins/blender/load/load_model.py b/pype/plugins/blender/load/load_model.py index 0013ccb90a..ad9137a15d 100644 --- a/pype/plugins/blender/load/load_model.py +++ b/pype/plugins/blender/load/load_model.py @@ -90,14 +90,16 @@ class BlendModelLoader(plugin.AssetLoader): lib_container = plugin.asset_name( asset, subset ) - namespace = namespace or plugin.asset_namespace( + unique_number = plugin.get_unique_number( asset, subset ) + namespace = namespace or f"{asset}_{unique_number}" container_name = plugin.asset_name( - asset, subset, namespace + asset, subset, unique_number ) container = bpy.data.collections.new(lib_container) + container.name = container_name blender.pipeline.containerise_existing( container, name, diff --git a/pype/plugins/blender/load/load_rig.py b/pype/plugins/blender/load/load_rig.py index d9e4495090..e09a9cb92f 100644 --- a/pype/plugins/blender/load/load_rig.py +++ b/pype/plugins/blender/load/load_rig.py @@ -106,14 +106,16 @@ class BlendRigLoader(plugin.AssetLoader): lib_container = plugin.asset_name( asset, subset ) - namespace = namespace or plugin.asset_namespace( + unique_number = plugin.get_unique_number( asset, subset ) + namespace = namespace or f"{asset}_{unique_number}" container_name = plugin.asset_name( - asset, subset, namespace + asset, subset, unique_number ) container = bpy.data.collections.new(lib_container) + container.name = container_name blender.pipeline.containerise_existing( container, name,