Merge branch 'develop' into feature/OP-7176_Use-folder-path-as-unique-identifier

# Conflicts:
#	openpype/hosts/blender/plugins/publish/extract_abc.py
#	openpype/hosts/blender/plugins/publish/extract_abc_animation.py
#	openpype/hosts/blender/plugins/publish/extract_blend.py
#	openpype/hosts/blender/plugins/publish/extract_blend_animation.py
#	openpype/hosts/blender/plugins/publish/extract_camera_abc.py
#	openpype/hosts/blender/plugins/publish/extract_camera_fbx.py
#	openpype/hosts/blender/plugins/publish/extract_fbx.py
#	openpype/hosts/blender/plugins/publish/extract_fbx_animation.py
#	openpype/hosts/blender/plugins/publish/extract_layout.py
This commit is contained in:
Jakub Trllo 2023-11-15 18:26:48 +01:00
commit 40a1dbed3e
53 changed files with 1132 additions and 638 deletions

View file

@ -12,6 +12,7 @@ from openpype.pipeline.publish import (
PublishValidationError,
)
from openpype.hosts.maya.api import lib
from openpype.hosts.maya.api.lib_rendersettings import RenderSettings
def convert_to_int_or_float(string_value):
@ -129,13 +130,13 @@ class ValidateRenderSettings(pyblish.api.InstancePlugin):
layer = instance.data['renderlayer']
cameras = instance.data.get("cameras", [])
# Get the node attributes for current renderer
attrs = lib.RENDER_ATTRS.get(renderer, lib.RENDER_ATTRS['default'])
# Prefix attribute can return None when a value was never set
prefix = lib.get_attr_in_layer(cls.ImagePrefixes[renderer],
layer=layer) or ""
padding = lib.get_attr_in_layer("{node}.{padding}".format(**attrs),
layer=layer)
padding = lib.get_attr_in_layer(
attr=RenderSettings.get_padding_attr(renderer),
layer=layer
)
anim_override = lib.get_attr_in_layer("defaultRenderGlobals.animation",
layer=layer)
@ -372,8 +373,6 @@ class ValidateRenderSettings(pyblish.api.InstancePlugin):
lib.set_attribute(data["attribute"], data["values"][0], node)
with lib.renderlayer(layer_node):
default = lib.RENDER_ATTRS['default']
render_attrs = lib.RENDER_ATTRS.get(renderer, default)
# Repair animation must be enabled
cmds.setAttr("defaultRenderGlobals.animation", True)
@ -391,15 +390,13 @@ class ValidateRenderSettings(pyblish.api.InstancePlugin):
default_prefix = default_prefix.replace(variant, "")
if renderer != "renderman":
node = render_attrs["node"]
prefix_attr = render_attrs["prefix"]
prefix_attr = RenderSettings.get_image_prefix_attr(renderer)
fname_prefix = default_prefix
cmds.setAttr("{}.{}".format(node, prefix_attr),
fname_prefix, type="string")
# Repair padding
padding_attr = render_attrs["padding"]
padding_attr = RenderSettings.get_padding_attr(renderer)
cmds.setAttr("{}.{}".format(node, padding_attr),
cls.DEFAULT_PADDING)
else: