From ffcc1656d2a4641bf9ae36e4a28a0c831f8d8a4f Mon Sep 17 00:00:00 2001 From: Kayla Man Date: Tue, 21 Feb 2023 11:08:07 +0800 Subject: [PATCH] cosmetic issue fix --- openpype/hosts/max/api/lib.py | 13 +++---- openpype/hosts/max/api/lib_renderproducts.py | 23 +++++------ openpype/hosts/max/api/lib_rendersettings.py | 39 +++++++++++-------- .../max/plugins/publish/collect_render.py | 2 +- .../plugins/publish/submit_max_deadline.py | 20 +++++----- 5 files changed, 48 insertions(+), 49 deletions(-) diff --git a/openpype/hosts/max/api/lib.py b/openpype/hosts/max/api/lib.py index 53e66c219e..6ee934d3da 100644 --- a/openpype/hosts/max/api/lib.py +++ b/openpype/hosts/max/api/lib.py @@ -135,17 +135,14 @@ def get_default_render_folder(project_setting=None): def set_framerange(startFrame, endFrame): """ - Args: - start_frame (int): Start frame number. - end_frame (int): End frame number. Note: Frame range can be specified in different types. Possible values are: + * `1` - Single frame. + * `2` - Active time segment ( animationRange ). + * `3` - User specified Range. + * `4` - User specified Frame pickup string (for example `1,3,5-12`). - * `1` - Single frame. - * `2` - Active time segment ( animationRange ). - * `3` - User specified Range. - * `4` - User specified Frame pickup string (for example `1,3,5-12`). - TODO: + Todo: Current type is hard-coded, there should be a custom setting for this. """ rt.rendTimeType = 4 diff --git a/openpype/hosts/max/api/lib_renderproducts.py b/openpype/hosts/max/api/lib_renderproducts.py index 6d476c9139..a74a6a7426 100644 --- a/openpype/hosts/max/api/lib_renderproducts.py +++ b/openpype/hosts/max/api/lib_renderproducts.py @@ -45,28 +45,25 @@ class RenderProducts(object): if renderer == "VUE_File_Renderer": return full_render_list - if ( - renderer == "ART_Renderer" or - renderer == "Redshift_Renderer" or - renderer == "V_Ray_6_Hotfix_3" or - renderer == "V_Ray_GPU_6_Hotfix_3" or - renderer == "Default_Scanline_Renderer" or - renderer == "Quicksilver_Hardware_Renderer" - ): + if renderer in [ + "ART_Renderer", + "Redshift_Renderer", + "V_Ray_6_Hotfix_3", + "V_Ray_GPU_6_Hotfix_3", + "Default_Scanline_Renderer", + "Quicksilver_Hardware_Renderer", + ]: render_elem_list = self.render_elements_product(output_file, img_fmt) if render_elem_list: - for render_elem in render_elem_list: - full_render_list.append(render_elem) - + full_render_list.extend(iter(render_elem_list)) return full_render_list if renderer == "Arnold": aov_list = self.arnold_render_product(output_file, img_fmt) if aov_list: - for aov in aov_list: - full_render_list.append(aov) + full_render_list.extend(iter(aov_list)) return full_render_list def beauty_render_product(self, folder, fmt): diff --git a/openpype/hosts/max/api/lib_rendersettings.py b/openpype/hosts/max/api/lib_rendersettings.py index 212c08846b..94c6ee775b 100644 --- a/openpype/hosts/max/api/lib_rendersettings.py +++ b/openpype/hosts/max/api/lib_rendersettings.py @@ -23,6 +23,11 @@ class RenderSettings(object): } def __init__(self, project_settings=None): + """ + Set up the naming convention for the render + elements for the deadline submission + """ + self._project_settings = project_settings if not self._project_settings: self._project_settings = get_project_settings( @@ -61,9 +66,9 @@ class RenderSettings(object): width = context["data"].get("resolutionWidth") height = context["data"].get("resolutionHeight") # Set Frame Range - startFrame = context["data"].get("frameStart") - endFrame = context["data"].get("frameEnd") - set_framerange(startFrame, endFrame) + frame_start = context["data"].get("frame_start") + frame_end = context["data"].get("frame_end") + set_framerange(frame_start, frame_end) # get the production render renderer_class = get_current_renderer() renderer = str(renderer_class).split(":")[0] @@ -78,24 +83,24 @@ class RenderSettings(object): )] except KeyError: aov_separator = "." - outputFilename = "{0}..{1}".format(output, img_fmt) - outputFilename = outputFilename.replace("{aov_separator}", + output_filename = "{0}..{1}".format(output, img_fmt) + output_filename = output_filename.replace("{aov_separator}", aov_separator) - rt.rendOutputFilename = outputFilename + rt.rendOutputFilename = output_filename if renderer == "VUE_File_Renderer": return # TODO: Finish the arnold render setup if renderer == "Arnold": self.arnold_setup() - if ( - renderer == "ART_Renderer" or - renderer == "Redshift_Renderer" or - renderer == "V_Ray_6_Hotfix_3" or - renderer == "V_Ray_GPU_6_Hotfix_3" or - renderer == "Default_Scanline_Renderer" or - renderer == "Quicksilver_Hardware_Renderer" - ): + if renderer in [ + "ART_Renderer", + "Redshift_Renderer", + "V_Ray_6_Hotfix_3", + "V_Ray_GPU_6_Hotfix_3", + "Default_Scanline_Renderer", + "Quicksilver_Hardware_Renderer", + ]: self.render_element_layer(output, width, height, img_fmt) rt.rendSaveFile = True @@ -146,11 +151,11 @@ class RenderSettings(object): def get_render_output(self, container, output_dir): output = os.path.join(output_dir, container) img_fmt = self._project_settings["max"]["RenderSettings"]["image_format"] # noqa - outputFilename = "{0}..{1}".format(output, img_fmt) - return outputFilename + output_filename = "{0}..{1}".format(output, img_fmt) + return output_filename def get_render_element(self): - orig_render_elem = list() + orig_render_elem = [] render_elem = rt.maxOps.GetCurRenderElementMgr() render_elem_num = render_elem.NumRenderElements() if render_elem_num < 0: diff --git a/openpype/hosts/max/plugins/publish/collect_render.py b/openpype/hosts/max/plugins/publish/collect_render.py index 16f8821986..7656c641ed 100644 --- a/openpype/hosts/max/plugins/publish/collect_render.py +++ b/openpype/hosts/max/plugins/publish/collect_render.py @@ -14,7 +14,7 @@ class CollectRender(pyblish.api.InstancePlugin): """Collect Render for Deadline""" order = pyblish.api.CollectorOrder + 0.01 - label = "Collect 3dmax Render Layers" + label = "Collect 3dsmax Render Layers" hosts = ['max'] families = ["maxrender"] diff --git a/openpype/modules/deadline/plugins/publish/submit_max_deadline.py b/openpype/modules/deadline/plugins/publish/submit_max_deadline.py index b53cc928d6..417a03de74 100644 --- a/openpype/modules/deadline/plugins/publish/submit_max_deadline.py +++ b/openpype/modules/deadline/plugins/publish/submit_max_deadline.py @@ -160,11 +160,11 @@ class MaxSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline): } self.log.debug("Submitting 3dsMax render..") - payload = self._use_puhlished_name(payload_data) + payload = self._use_published_name(payload_data) job_info, plugin_info = payload self.submit(self.assemble_payload(job_info, plugin_info)) - def _use_puhlished_name(self, data): + def _use_published_name(self, data): instance = self._instance job_info = copy.deepcopy(self.job_info) plugin_info = copy.deepcopy(self.plugin_info) @@ -199,14 +199,14 @@ class MaxSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline): renderer_class = get_current_renderer() renderer = str(renderer_class).split(":")[0] - if ( - renderer == "ART_Renderer" or - renderer == "Redshift_Renderer" or - renderer == "V_Ray_6_Hotfix_3" or - renderer == "V_Ray_GPU_6_Hotfix_3" or - renderer == "Default_Scanline_Renderer" or - renderer == "Quicksilver_Hardware_Renderer" - ): + if renderer in [ + "ART_Renderer", + "Redshift_Renderer", + "V_Ray_6_Hotfix_3", + "V_Ray_GPU_6_Hotfix_3", + "Default_Scanline_Renderer", + "Quicksilver_Hardware_Renderer", + ]: render_elem_list = RenderSettings().get_render_element() for i, element in enumerate(render_elem_list): element = element.replace(orig_scene, new_scene)