如何通过 Python 更新 NUKE 中的 nuke.frame() 值?
How to update nuke.frame() value in NUKE via Python?
我想使用 if...else
条件语句自动播放和停止 The Foundry NUKE 中的序列。我可以轻松地开始播放序列,但无法停止。问题是值 nuke.frame()
没有更新。如果有人对此问题有任何经验,请帮助我。
这是一个代码:
checker = nuke.createNode('CheckerBoard2', 'boxsize 100 centerlinewidth 0')
blur = nuke.createNode('Blur', 'size sin(frame/10)*25', inpanel=False)
merge = nuke.createNode('Merge2', inpanel=False)
wheel = nuke.createNode("ColorWheel", 'rotate frame*10 centerSaturation 1')
merge.connectInput(0, wheel)
nuke.toNode('Merge1').setSelected(True)
nukescripts.connect_selected_to_viewer(0)
for all in nuke.allNodes():
all.setSelected(True)
_autoplace()
f = nuke.frame(1)
def playBlast():
if f >= 1 and f <= 99:
nuke.activeViewer().play(1)
return
else:
nuke.activeViewer().stop()
print f
playBlast()
我找到了解决问题的方法:
def playBlast():
for time in range(1, 201, 1):
if nuke.frame(time) >= 1 and nuke.frame(time) <= 99:
nuke.activeViewer().play(1)
else:
nuke.activeViewer().stop()
playBlast()
我想使用 if...else
条件语句自动播放和停止 The Foundry NUKE 中的序列。我可以轻松地开始播放序列,但无法停止。问题是值 nuke.frame()
没有更新。如果有人对此问题有任何经验,请帮助我。
这是一个代码:
checker = nuke.createNode('CheckerBoard2', 'boxsize 100 centerlinewidth 0')
blur = nuke.createNode('Blur', 'size sin(frame/10)*25', inpanel=False)
merge = nuke.createNode('Merge2', inpanel=False)
wheel = nuke.createNode("ColorWheel", 'rotate frame*10 centerSaturation 1')
merge.connectInput(0, wheel)
nuke.toNode('Merge1').setSelected(True)
nukescripts.connect_selected_to_viewer(0)
for all in nuke.allNodes():
all.setSelected(True)
_autoplace()
f = nuke.frame(1)
def playBlast():
if f >= 1 and f <= 99:
nuke.activeViewer().play(1)
return
else:
nuke.activeViewer().stop()
print f
playBlast()
我找到了解决问题的方法:
def playBlast():
for time in range(1, 201, 1):
if nuke.frame(time) >= 1 and nuke.frame(time) <= 99:
nuke.activeViewer().play(1)
else:
nuke.activeViewer().stop()
playBlast()