纳金网

标题: Nuke下实现UV 贴图重复(整数形态) [打印本页]

作者: 铁锹    时间: 2017-7-13 16:42
标题: Nuke下实现UV 贴图重复(整数形态)
在maya 程序中有 uv重复纹理贴图功能:
14966488278735.jpg
在nuke 中找不到现成对应的贴图重复功能。尤其在贴图需要大批量的重复度时,尤其麻烦。以下就是 nuke节点加上自定义的表达式,实现贴图重复的功能。目前仅能支持自然数序列的 uv重复度。
需要重复的图形:
14966488273434.jpg
创建两个节点,一个为mirror,另一个为 contactsheet。分别命名如下图:
14966488278807.jpg
打开mirror 节点的属性,并右键 horizontal,弹出的菜单里选择add expression。
14966488273634.jpg
在弹出的对话框中输入如下表达式:
1496648827418.jpg
int((frame-1)%contactsheet1.knob.columns%2)
同理,设置vertical 的表达式:
14966488273967.jpg
int((frame-1)/contactsheet1.knob.columns%2)
打开contactsheet 节点的属性,修改 rows/columns为4/4 ,勾选use frames instead of inputs,设置 frame range为1/16 。
14966488271015.jpg
修改resolution 的表达式:
14966488274889.jpg
mirror1.width*contactsheet1.knob.columns
14966488278820.jpg
mirror1.height*contactsheet1.knob.rows
 至此,节点构造完毕。先看一下完成后的节点:
14966488278983.jpg
完成后的节点输出:
14966488283599.jpg
可以看到输出的节点实现了对称重复。此节点还有自调节分辨率的功能。
via yiihuu




欢迎光临 纳金网 (http://go.narkii.com/club/) Powered by Discuz! X2.5