Skip to content
This repository has been archived by the owner on Sep 20, 2024. It is now read-only.

Maya: remove invalid prefix token for non-multipart outputs #3981

Merged
merged 3 commits into from
Oct 19, 2022
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 15 additions & 9 deletions openpype/hosts/maya/api/lib_renderproducts.py
Original file line number Diff line number Diff line change
Expand Up @@ -260,20 +260,20 @@ def get_renderer_prefix(self):

"""
try:
file_prefix_attr = IMAGE_PREFIXES[self.renderer]
prefix_attr = IMAGE_PREFIXES[self.renderer]
except KeyError:
raise UnsupportedRendererException(
"Unsupported renderer {}".format(self.renderer)
)

file_prefix = self._get_attr(file_prefix_attr)
prefix = self._get_attr(prefix_attr)

if not file_prefix:
if not prefix:
# Fall back to scene name by default
log.debug("Image prefix not set, using <Scene>")
file_prefix = "<Scene>"

return file_prefix
return prefix

def get_render_attribute(self, attribute):
"""Get attribute from render options.
Expand Down Expand Up @@ -730,13 +730,16 @@ def get_renderer_prefix(self):
"""Get image prefix for V-Ray.

This overrides :func:`ARenderProducts.get_renderer_prefix()` as
we must add `<aov>` token manually.
we must add `<aov>` token manually. This is done only for
non-multipart outputs, where `<aov>` token doesn't make sense.

See also:
:func:`ARenderProducts.get_renderer_prefix()`

"""
prefix = super(RenderProductsVray, self).get_renderer_prefix()
if self.multipart:
return prefix
aov_separator = self._get_aov_separator()
prefix = "{}{}<aov>".format(prefix, aov_separator)
return prefix
Expand Down Expand Up @@ -974,15 +977,18 @@ def get_renderer_prefix(self):
"""Get image prefix for Redshift.

This overrides :func:`ARenderProducts.get_renderer_prefix()` as
we must add `<aov>` token manually.
we must add `<aov>` token manually. This is done only for
non-multipart outputs, where `<aov>` token doesn't make sense.

See also:
:func:`ARenderProducts.get_renderer_prefix()`

"""
file_prefix = super(RenderProductsRedshift, self).get_renderer_prefix()
separator = self.extract_separator(file_prefix)
prefix = "{}{}<aov>".format(file_prefix, separator or "_")
prefix = super(RenderProductsRedshift, self).get_renderer_prefix()
if self.multipart:
return prefix
separator = self.extract_separator(prefix)
prefix = "{}{}<aov>".format(prefix, separator or "_")
return prefix

def get_render_products(self):
Expand Down