Keyshot脚本开发-渲染环境光遮蔽

渲染环境光遮蔽 (Render Ambient Occlusion) 将渲染场景的环境光遮蔽通道。
脚本工作原理:
在大多数脚本的顶部,我们首先导入外部 Python 库:
import os, re.
一:创建 main 函数,定义属性,并在用户提示符中显示它们。
使用 lux.getSceneInfo 函数获取场景信息。
在第 10 行和第 17 行之间,lux.DIALOG 函数定义以下属性:
输出目标文件夹,文件夹。
输出文件的名称,名称。
图像尺寸、宽度和高度。
渲染时间由用户定义,时间。
无论用户是否要将图像发送到队列,队列。
无论用户是否希望在添加作业后处理队列,都要处理。
在第 18 行到第 21 行中,使用 lux.getInputDialog 打开实际的用户提示窗口。在第 21 行,“id”标签调用最近的输入值。
二:检查错误,如果出现错误,则和平退出。将用户输入分配给相应的变量。请参阅下面的逐行代码细分。
如果输出文件夹无效或留空,请提供错误消息。
如果文件名留空,则给出错误消息。
使用 lux.getEnvironmentImage 获取当前环境映像,并将其分配给变量 env。
使用 lux.getMaterialMapping 从模型中获取当前材料,并将其分配给变量 mmap。
使用 lux.setEnvironmentImage 将环境更改为“All White.hdr”。
第 34 行和第 35 行使用 lux.getSceneTree 遍历场景树中的所有部分,并使用 lux.setMaterial 将“哑光白”材质分配给所有部分。
将输出路径分配给 path 变量。
将所需的宽度分配给 width 变量。
将所需的高度分配给高度变量。
将所需的渲染时间分配给时间变量
创建名为 queue 的布尔表达式,并根据用户的选择将其设置为“True”或“False”。
将布尔表达式命名为 process,并根据用户的选择将其设置为“True”或“False”。
三:设置渲染选项。
使用 lux.getRenderOptions 将渲染选项分配给 ropts 变量。
使用 setMaxTimeRendering 变量将渲染选项设置为“max time”。
如果用户将 “添加到队列 ”设置为 “True”,那么它将被添加到内部KeyShot队列中。
四:渲染图像并设置所有先前的参数备份。
使用 lux.renderImage 函数渲染图像。
将旧环境应用于场景。
将旧材料应用回模型。
对于第 53 行到第 55 行,如果用户请求处理队列,请这样做。
调用 main 函数。