核查看者设置帧范围故障

2024-06-01 02:14:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用Nuke10编写一个时间轴同步脚本。 我应该更改全局帧设置。示例:

nuke.root().knob('first_frame').setValue(1)
nuke.root().knob('last_frame').setValue(100)

之后,我应该改变观众播放范围。示例:

^{pr2}$

单独使用是有效的。但在一起-不是。开始时,我有全局帧范围1-10。当我运行所有的线-帧范围设置为1-100,但播放范围设置为5-10。在

我在脚本的中间添加命令以检查播放范围:

nuke.root().knob('first_frame').setValue(1)
nuke.root().knob('last_frame').setValue(100)

x = vv.playbackRange()
print(x)

vv['frame_range_lock'].setValue(True)
vv['frame_range'].setValue('5-40')

是印刷品:

# Result: 1-10

我认为问题是在脚本运行完成之前,查看器中的数据不会更新。在

我如何强迫核弹刷新观众?在

或者可能有一个命令正在等待完成以前命令的更新?在

或者有必要在查看器中指定帧范围?在


Tags: 命令脚本示例rangeroot全局framefirst
1条回答
网友
1楼 · 发布于 2024-06-01 02:14:42

你只需要说viewer节点重画,它就会正确地更新范围。在

这是一个有效的例子

vv = nuke.activeViewer().node()
nuke.root().knob('first_frame').setValue(1)
nuke.root().knob('last_frame').setValue(100)

vv.redraw()
vv['frame_range_lock'].setValue(True)
vv['frame_range'].setValue('25-40')
x = vv.playbackRange()
print(x)

相关问题 更多 >