add optional validator to check verbosity level in Arnold and plugin info for arnold verbose

This commit is contained in:
Kayla Man 2023-11-20 16:48:03 +08:00
parent 5d10f7f2dd
commit b0ab09201a
3 changed files with 53 additions and 3 deletions

View file

@ -97,6 +97,7 @@ class VRayPluginInfo(object):
@attr.s
class ArnoldPluginInfo(object):
ArnoldFile = attr.ib(default=None)
ArnoldVerbose = attr.ib(default=2)
class MayaSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline,
@ -281,6 +282,10 @@ class MayaSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline,
plugin_payload = attr.asdict(plugin_info)
if instance.data["renderer"] == "arnold":
plugin_payload["ArnoldVerbose"] = cmds.getAttr(
"defaultArnoldRenderOptions.log_verbosity")
# Patching with pluginInfo from settings
for key, value in self.pluginInfo.items():
plugin_payload[key] = value
@ -648,7 +653,7 @@ class MayaSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline,
return job_info, attr.asdict(plugin_info)
def _get_arnold_render_payload(self, data):
from maya import cmds
# Job Info
job_info = copy.deepcopy(self.job_info)
job_info.Name = self._job_info_label("Render")
@ -658,9 +663,12 @@ class MayaSubmitDeadline(abstract_submit_deadline.AbstractSubmitDeadline,
# Plugin Info
ass_file, _ = os.path.splitext(data["output_filename_0"])
ass_filepath = ass_file + ".ass"
current_verbosity_level = cmds.getAttr(
"defaultArnoldRenderOptions.log_verbosity")
plugin_info = ArnoldPluginInfo(
ArnoldFile=ass_filepath
ArnoldFile=ass_filepath,
ArnoldVerbose=current_verbosity_level
)
return job_info, attr.asdict(plugin_info)