mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
Merge pull request #4761 from quadproduction/363-fix-studio-openpype-does-not-load-assets-linked-to-the-shot
thank you guys. this is great
This commit is contained in:
commit
d1b59c4aaa
3 changed files with 17 additions and 38 deletions
|
|
@ -1216,7 +1216,7 @@ def get_representations(
|
|||
version_ids=version_ids,
|
||||
context_filters=context_filters,
|
||||
names_by_version_ids=names_by_version_ids,
|
||||
standard=True,
|
||||
standard=standard,
|
||||
archived=archived,
|
||||
fields=fields
|
||||
)
|
||||
|
|
|
|||
|
|
@ -234,26 +234,10 @@ class MayaPlaceholderLoadPlugin(PlaceholderPlugin, PlaceholderLoadMixin):
|
|||
return self.get_load_plugin_options(options)
|
||||
|
||||
def cleanup_placeholder(self, placeholder, failed):
|
||||
"""Hide placeholder, parent them to root
|
||||
add them to placeholder set and register placeholder's parent
|
||||
to keep placeholder info available for future use
|
||||
"""Hide placeholder, add them to placeholder set
|
||||
"""
|
||||
|
||||
node = placeholder._scene_identifier
|
||||
node_parent = placeholder.data["parent"]
|
||||
if node_parent:
|
||||
cmds.setAttr(node + ".parent", node_parent, type="string")
|
||||
|
||||
if cmds.getAttr(node + ".index") < 0:
|
||||
cmds.setAttr(node + ".index", placeholder.data["index"])
|
||||
|
||||
holding_sets = cmds.listSets(object=node)
|
||||
if holding_sets:
|
||||
for set in holding_sets:
|
||||
cmds.sets(node, remove=set)
|
||||
|
||||
if cmds.listRelatives(node, p=True):
|
||||
node = cmds.parent(node, world=True)[0]
|
||||
cmds.sets(node, addElement=PLACEHOLDER_SET)
|
||||
cmds.hide(node)
|
||||
cmds.setAttr(node + ".hiddenInOutliner", True)
|
||||
|
|
@ -286,8 +270,6 @@ class MayaPlaceholderLoadPlugin(PlaceholderPlugin, PlaceholderLoadMixin):
|
|||
elif not cmds.sets(root, q=True):
|
||||
return
|
||||
|
||||
if placeholder.data["parent"]:
|
||||
cmds.parent(nodes_to_parent, placeholder.data["parent"])
|
||||
# Move loaded nodes to correct index in outliner hierarchy
|
||||
placeholder_form = cmds.xform(
|
||||
placeholder.scene_identifier,
|
||||
|
|
|
|||
|
|
@ -158,7 +158,7 @@ class AbstractTemplateBuilder(object):
|
|||
def linked_asset_docs(self):
|
||||
if self._linked_asset_docs is None:
|
||||
self._linked_asset_docs = get_linked_assets(
|
||||
self.current_asset_doc
|
||||
self.project_name, self.current_asset_doc
|
||||
)
|
||||
return self._linked_asset_docs
|
||||
|
||||
|
|
@ -1151,13 +1151,10 @@ class PlaceholderItem(object):
|
|||
return self._log
|
||||
|
||||
def __repr__(self):
|
||||
name = None
|
||||
if hasattr("name", self):
|
||||
name = self.name
|
||||
if hasattr("_scene_identifier ", self):
|
||||
name = self._scene_identifier
|
||||
|
||||
return "< {} {} >".format(self.__class__.__name__, name)
|
||||
return "< {} {} >".format(
|
||||
self.__class__.__name__,
|
||||
self._scene_identifier
|
||||
)
|
||||
|
||||
@property
|
||||
def order(self):
|
||||
|
|
@ -1419,16 +1416,7 @@ class PlaceholderLoadMixin(object):
|
|||
"family": [placeholder.data["family"]]
|
||||
}
|
||||
|
||||
elif builder_type != "linked_asset":
|
||||
context_filters = {
|
||||
"asset": [re.compile(placeholder.data["asset"])],
|
||||
"subset": [re.compile(placeholder.data["subset"])],
|
||||
"hierarchy": [re.compile(placeholder.data["hierarchy"])],
|
||||
"representation": [placeholder.data["representation"]],
|
||||
"family": [placeholder.data["family"]]
|
||||
}
|
||||
|
||||
else:
|
||||
elif builder_type == "linked_asset":
|
||||
asset_regex = re.compile(placeholder.data["asset"])
|
||||
linked_asset_names = []
|
||||
for asset_doc in linked_asset_docs:
|
||||
|
|
@ -1444,6 +1432,15 @@ class PlaceholderLoadMixin(object):
|
|||
"family": [placeholder.data["family"]],
|
||||
}
|
||||
|
||||
else:
|
||||
context_filters = {
|
||||
"asset": [re.compile(placeholder.data["asset"])],
|
||||
"subset": [re.compile(placeholder.data["subset"])],
|
||||
"hierarchy": [re.compile(placeholder.data["hierarchy"])],
|
||||
"representation": [placeholder.data["representation"]],
|
||||
"family": [placeholder.data["family"]]
|
||||
}
|
||||
|
||||
return list(get_representations(
|
||||
project_name,
|
||||
context_filters=context_filters
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue