Asset Pipeline v2 #145
@ -47,20 +47,17 @@ def ownership_get(
|
||||
list[bpy.types.Object]: Returns a list of objects that have no owner and will not be included
|
||||
in the merge process
|
||||
"""
|
||||
task_layer_name = scene.asset_pipeline.task_layer_name
|
||||
task_layer_col_name = get_dict_tuple_item(
|
||||
constants.TASK_LAYER_TYPES, task_layer_name
|
||||
)[1]
|
||||
task_layer_key = scene.asset_pipeline.task_layer_name
|
||||
scene.asset_pipeline.temp_transfer_data.clear()
|
||||
task_layer_col = local_col.children.get(task_layer_col_name)
|
||||
for obj in local_col.all_objects:
|
||||
# Mark Asset ID Owner for objects in the current task layers collection
|
||||
if obj.asset_id_owner == "NONE" and obj in list(task_layer_col.all_objects):
|
||||
obj.asset_id_owner = task_layer_name
|
||||
obj.asset_id_owner = task_layer_key
|
||||
# Skip items that have no owner
|
||||
if obj.asset_id_owner == "NONE":
|
||||
continue
|
||||
ownership_transfer_data_cleanup(obj, task_layer_name)
|
||||
ownership_transfer_data_cleanup(obj, task_layer_key)
|
||||
transfer_core.init_transfer_data(scene, obj)
|
||||
|
||||
|
||||
@ -85,10 +82,7 @@ def get_invalid_objects(
|
||||
) -> list[bpy.types.Object]:
|
||||
# TODO Add Docstring
|
||||
# TODO Make common function to get task layer col via task layer name
|
||||
task_layer_name = scene.asset_pipeline.task_layer_name
|
||||
task_layer_col_name = get_dict_tuple_item(
|
||||
constants.TASK_LAYER_TYPES, task_layer_name
|
||||
)[1]
|
||||
task_layer_key = scene.asset_pipeline.task_layer_name
|
||||
task_layer_col = local_col.children.get(task_layer_col_name)
|
||||
|
||||
invalid_obj = []
|
||||
@ -97,7 +91,7 @@ def get_invalid_objects(
|
||||
invalid_obj.append(obj)
|
||||
if (
|
||||
obj not in list(task_layer_col.all_objects)
|
||||
and obj.asset_id_owner == task_layer_name
|
||||
and obj.asset_id_owner == task_layer_key
|
||||
):
|
||||
invalid_obj.append(obj)
|
||||
return invalid_obj
|
||||
|
@ -125,8 +125,8 @@ class ASSETPIPE_OT_sync_with_publish(bpy.types.Operator):
|
||||
if not local_col:
|
||||
self.report({'ERROR'}, "Top level collection could not be found")
|
||||
return {'CANCELLED'}
|
||||
task_layer_name = context.scene.asset_pipeline.task_layer_name
|
||||
if task_layer_name == "NONE":
|
||||
task_layer_key = context.scene.asset_pipeline.task_layer_name
|
||||
if task_layer_key == "NONE":
|
||||
self.report({'ERROR'}, "Current File Name doesn't contain valid task layer")
|
||||
return {'CANCELLED'}
|
||||
|
||||
@ -183,8 +183,8 @@ class ASSETPIPE_OT_sync_with_publish(bpy.types.Operator):
|
||||
core.ownership_set(temp_transfer_data)
|
||||
current_file = Path(bpy.data.filepath)
|
||||
temp_dir = Path(bpy.app.tempdir).parent
|
||||
task_layer_name = context.scene.asset_pipeline.task_layer_name
|
||||
if task_layer_name == "NONE":
|
||||
task_layer_key = context.scene.asset_pipeline.task_layer_name
|
||||
if task_layer_key == "NONE":
|
||||
self.report({'ERROR'}, "Current File Name doesn't contain valid task layer")
|
||||
return {'CANCELLED'}
|
||||
|
||||
@ -200,7 +200,7 @@ class ASSETPIPE_OT_sync_with_publish(bpy.types.Operator):
|
||||
bpy.ops.wm.save_as_mainfile(filepath=temp_file.__str__(), copy=True)
|
||||
error_msg = core.merge_task_layer(
|
||||
context,
|
||||
local_tls=[task_layer_name],
|
||||
local_tls=[task_layer_key],
|
||||
external_file=sync_target,
|
||||
)
|
||||
|
||||
@ -231,7 +231,7 @@ class ASSETPIPE_OT_sync_with_publish(bpy.types.Operator):
|
||||
local_tls = [
|
||||
task_layer
|
||||
for task_layer in constants.TASK_LAYER_KEYS
|
||||
if task_layer != task_layer_name
|
||||
if task_layer != task_layer_key
|
||||
]
|
||||
|
||||
error_msg = core.merge_task_layer(
|
||||
|
@ -51,6 +51,7 @@ class AssetPipeline(bpy.types.PropertyGroup):
|
||||
|
||||
temp_transfer_data: bpy.props.CollectionProperty(type=AssetTransferDataTemp)
|
||||
|
||||
# TODO Rename to Current_Task_Layer
|
||||
task_layer_name: bpy.props.EnumProperty(
|
||||
name="Task Layer Name", items=constants.TASK_LAYER_TYPES
|
||||
)
|
||||
|
@ -226,14 +226,14 @@ def transfer_info_is_missing(transfer_info, type_key, list):
|
||||
|
||||
def transfer_info_init(scene, obj, list, type_key):
|
||||
transfer_data = obj.transfer_data_ownership
|
||||
task_layer_name = scene.asset_pipeline.task_layer_name
|
||||
task_layer_key = scene.asset_pipeline.task_layer_name
|
||||
for item in list:
|
||||
# Only add new ownership transfer_info if vertex group doesn't have an owner
|
||||
matches = check_transfer_data_entry(transfer_data, item.name, type_key)
|
||||
if len(matches) == 0:
|
||||
scene.asset_pipeline.add_temp_trasnfer_data(
|
||||
name=item.name,
|
||||
owner=task_layer_name,
|
||||
owner=task_layer_key,
|
||||
type=type_key,
|
||||
obj=obj,
|
||||
)
|
||||
|
@ -311,7 +311,7 @@ def material_slots_is_missing(transfer_info):
|
||||
|
||||
|
||||
def init_material_slots(scene, obj):
|
||||
task_layer_name = scene.asset_pipeline.task_layer_name
|
||||
task_layer_key = scene.asset_pipeline.task_layer_name
|
||||
type_key = constants.MATERIAL_SLOT_KEY
|
||||
name = constants.MATERIAL_TRANSFER_INFO_NAME
|
||||
transfer_data = obj.transfer_data_ownership
|
||||
@ -324,7 +324,7 @@ def init_material_slots(scene, obj):
|
||||
if len(matches) == 0:
|
||||
scene.asset_pipeline.add_temp_trasnfer_data(
|
||||
name=name,
|
||||
owner=task_layer_name,
|
||||
owner=task_layer_key,
|
||||
type=type_key,
|
||||
obj=obj,
|
||||
)
|
||||
@ -549,7 +549,7 @@ def init_attributes(scene, obj):
|
||||
if obj.type != "MESH":
|
||||
return
|
||||
transfer_data = obj.transfer_data_ownership
|
||||
task_layer_name = scene.asset_pipeline.task_layer_name
|
||||
task_layer_key = scene.asset_pipeline.task_layer_name
|
||||
type_key = constants.ATTRIBUTE_KEY
|
||||
for atttribute in attributes_get_editable(obj.data.attributes):
|
||||
# Only add new ownership transfer_info if vertex group doesn't have an owner
|
||||
@ -559,7 +559,7 @@ def init_attributes(scene, obj):
|
||||
if len(matches) == 0:
|
||||
scene.asset_pipeline.add_temp_trasnfer_data(
|
||||
name=atttribute.name,
|
||||
owner=task_layer_name,
|
||||
owner=task_layer_key,
|
||||
type=type_key,
|
||||
obj=obj,
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user