整理合集!用在NUKE里面的Python小命令(下)

11.获取sys当前日期。例如(03-07-2018)

[clock format [clock seconds] -format {%d-%m-%Y}]

12.在Nuke中模糊一个通道。

b = nuke.createNode('Blur')

b ['channels']。setValue(“green”)

b ['size']。setValue(100)

模糊图层:

b = nuke.createNode('Blur')

b['channels'].setValue("depth")

13.设置'Merge'节点边界框从联合到'B'。

仅选定节点:

for s in nuke.selectedNodes("Merge2"):

s['bbox'].setValue(3)

对所有'Merge' 节点:

for s in nuke.allNodes("Merge2"):

s['bbox'].setValue(3)

14.禁用'ScanlineRender'输出的额外通道。

默认情况下,nukes的“ScanlineRender”节点会渲染一些额外的通道而不是“rgba”。如果脚本中有许多“ScanlineRender”节点使用默认设置,则nuke将减慢速度。要删除那个额外的通道,请使用以下简单的python脚本。

示例图片:

for s in nuke.selectedNodes("ScanlineRender"):

s['output_motion_vectors_type'].setValue(0)

s['MB_channel'].setValue('none')

15.打印具有节点名称的所有读取节点文件路径。

for s in nuke.allNodes('Read'):

print s['name'].value() + ' - ' + s['file'].value()

16.将变换节点的轴心点自动设置为中心:

for a in nuke.selectedNodes():

a['center'].setExpression('[value name].bbox.r+([value name].bbox.x-[value name].bbox.r)/2', 0)

a['center'].setExpression('[value name].bbox.y+([value name].bbox.t-[value name].bbox.y)/2', 1)

a['center'].clearAnimated()

17.基于输入bbox的自动裁剪。

s = nuke.selectedNode()

s['box'].setExpression('[value name].bbox.x', 0)

s['box'].setExpression('[value name].bbox.y', 1)

s['box'].setExpression('[value name].bbox.r', 2)

s['box'].setExpression('[value name].bbox.t', 3)

s['box'].clearAnimated()

18.自动放置cornerPin节点的引脚。

selNode = nuke.selectedNode()

selNode['from1'].setExpression('[value name].bbox.x', 0)

selNode['from1'].setExpression('[value name].bbox.y', 1)

selNode['from1'].clearAnimated()

selNode['from2'].setExpression('[value name].bbox.r', 0)

selNode['from2'].setExpression('[value name].bbox.y', 1)

selNode['from2'].clearAnimated()

selNode['from3'].setExpression('[value name].bbox.r', 0)

selNode['from3'].setExpression('[value name].bbox.t', 1)

selNode['from3'].clearAnimated()

selNode['from4'].setExpression('[value name].bbox.x', 0)

selNode['from4'].setExpression('[value name].bbox.t', 1)

selNode['from4'].clearAnimated()

## copying value's from

selNode['to1'].setExpression('[value name].bbox.x', 0)

selNode['to1'].setExpression('[value name].bbox.y', 1)

selNode['to1'].clearAnimated()

selNode['to2'].setExpression('[value name].bbox.r', 0)

selNode['to2'].setExpression('[value name].bbox.y', 1)

selNode['to2'].clearAnimated()

selNode['to3'].setExpression('[value name].bbox.r', 0)

selNode['to3'].setExpression('[value name].bbox.t', 1)

selNode['to3'].clearAnimated()

selNode['to4'].setExpression('[value name].bbox.x', 0)

selNode['to4'].setExpression('[value name].bbox.t', 1)

selNode['to4'].clearAnimated()

19.要将通道更改为仅限于与roto节点连接的所有模糊节点的alpha。

for sel in nuke.allNodes('Roto'):

for each in sel.dependent():

if each.Class()=="Blur":

each['channels'].setValue("alpha")

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180703A1IWUF00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券