码迷,mamicode.com
首页 > 其他好文 > 详细

自定义Write节点的afterrender属性

时间:2015-10-10 20:00:59      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:

由于nuke中的write节点提供了beforerender,afterrender这类事件,我们想添加一些功能只需要在这里面敲入代码即可。事件一旦发生,自然会触发我们敲入的co

de。
 
Nuke中每次渲染完毕后还需要把渲染结果再倒入进来,实在不胜其烦,于是写了一段代码敲入afterrender输入栏里,希望在渲染结束后触发这段代码自动导入渲染结果。
 
Talk is cheap,show you the code:
 
###########################################################################

inputx = nuke.thisNode()[‘xpos‘].value()
inputy = nuke.thisNode()[‘ypos‘].value()
filelist = nuke.getFileNameList(os.path.dirname(nuke.thisNode().knob(‘file‘).value()))
for a in filelist:
    if a.find(‘.db‘) < 0:
        if a.find(‘-‘) >= 0:
            firstframe=a.split(‘ ‘)[1].split("-")[0]
            lastframe=a.split(‘ ‘)[1].split("-")[1] 
            newnode = nuke.nodes.Read(file=os.path.dirname(nuke.thisNode().knob(‘file‘).value()) + ‘/‘ + a.split(‘ ‘)[0],first=firstframe,last=lastframe,) 
            newnode.setXYpos(int(inputx),int(inputy)+50) 
        else: 
            firstframe=a.split(‘.‘)[-2] 
            lastframe=a.split(‘.‘)[-2] 
            newnode = nuke.nodes.Read(file=os.path.dirname(nuke.thisNode().knob(‘file‘).value()) + ‘/‘ + a.split(‘ ‘)[0],first=firstframe,last=lastframe,) 
            newnode.setXYpos(int(inputx),int(inputy)+50) 
    else:
        pass

自定义Write节点的afterrender属性

标签:

原文地址:http://www.cnblogs.com/hksac/p/4867976.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!