繁体   English   中英

如何通过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()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM