凌云的博客

关于视效的一些学习和分享

 2019-01-15 23:19:32 | 0条评论  |  Nuke

TD-class26:Nuke Python API及Nuke控件

 
 

进入nuke开发的第一课

 

Nuke开发相关的文档

Nuke官方的一个技术支持论坛: https://support.foundry.com/hc/zh-cn 
Python开发的帮助文档: https://learn.foundry.com/nuke/developers/11.2/pythondevguide/ 
Nuke Python API帮助文档: https://learn.foundry.com/nuke/developers/11.2/pythonreference/ 
Nuke TCL (表达式)文档: http://www.nukepedia.com/reference/Tcl/

中文的TCL教程: https://www.yiibai.com/tcl

本堂课的课件: https://github.com/TDChina/TDClass2_Nuke/blob/master/lessons/lesson1.md

 

用Python操作nuke节点

nuke的脚本编辑器打开位置:

title

  • nuke里获取一个节点

    已知节点的名称,使用toNode函数获取,返回一个节点对象。 
    nuke.toNode('Text1')

    获取当前选择的单个节点,返回一个节点对象。 
    nuke.selectedNode()

    获取当前选择的多个节点,返回一个列表。 
    nuke.selectedNodes()

  • 获取节点的类型

 
  1. = nuke.selectedNode()
  2. print n.Class()
  3. >>> Text2

这里我们选择的是Text类型的节点,为何这里返回的是Text2。 
是因为Nuke经过多年的发展,少部分的节点分为第一代和第二代。 
在新版本中,默认我们创建的是第二代节点。

  • root相关操作

    获取nuke文件路径 
    nuke.root().name()

    title

    获取项目设置的起始帧 
    nuke.root().firstFrame()

    title 

  • 获取节点和设置某个属性的值

    比如一个Text节点,我们想获取它的clip to的值是多少。 
    首先要找到clip to的Knob名称。 
    可以将鼠标放到cl