我想从镜头列表(在相机序列器中)的字段中获取信息。我解决的shotname:
test = cmds.getAttr('shot1.sn')
print test
但其余的..我被困住了。当我尝试调用其他参数(如 startTime)时,我会收到各种错误,具体取决于我如何尝试。
欢迎来到 SO,幻想曲。
您提出了一个非常模糊的问题,因此作为回报,您将得到一个非常模糊的答案。
您可以通过cmds.listConnections
在您的音序器对象上使用来获取您的镜头列表。之后,使用for
循环并使用以下方法获取镜头信息cmds.getAttr
:
shots = cmds.listConnections("sequencer1", type="shot") or [] # Get a list of all shots from the sequencer.
for shot in shots:
shot_name = cmds.getAttr("{}.shotName".format(shot)) # Query shot's name.
start_frame = cmds.getAttr("{}.startFrame".format(shot)) # Query shot's start frame.
end_frame = cmds.getAttr("{}.endFrame".format(shot)) # Query shot's end frame.
print shot_name, start_frame, end_frame # Print out shot's info.
带有 2 个镜头的音序器的示例输出:
输出:
射击 1.0 50.0
射击结束 51.0 120.0
如果您不确定拍摄对象的属性名称,您可以在此处找到它们。
如果您仍然有问题,我建议您从脚本编辑器中粘贴错误消息,以便我们诊断问题所在。