在Nuke中制作滤波器信号波动效果的两种方法
当下,Hologram全息效果在影视后期的效果越来越常见。下面笔者将介绍在Nuke中的两种制作思路,希望能给大家带来帮助:
- 首先,笔者将使用Ramp节点制作一个颜色丰富和动态变化的序列。当然,大家可以直接使用需要制作成Hologram全息效果的镜头。在这里笔者之所以特意把这点强调说明是因为想和大家分享下在Nuke中制作彩虹条的方法:
01):使用Shuffle节点将Ramp节点的g和b通道变为1;
02):使用Colorspace节点转换色彩空间:in HSV,out:Linear;
图一:使用Ramp节点生成的渐变图
图二:通过以上方法得到的彩虹条效果
- 其次,添加Multiply节点并在其value属性控件写入表达式:abs(sin(frame*80))*1.5,以添加画面亮度随机紊乱变化效果;
- 最后,使用X_Waveform和PlotScanline gizmo 节点对画面添加Hologram全息效果;
图三:X_Waveform gizmo 节点模拟效果
图四:PlotScanline gizmo 节点模拟效果
当然,大家还可以通过调节X_Waveform和PlotScanline gizmo 节点的属性获得更多效果。
Nuke脚本文件分享如下:
set cut_paste_input [stack 0]
version 10.5 v5
BackdropNode {
inputs 0
name BackdropNode1
tile_color 0x252327ff
label "Wavefilter Motiongraphic_FX"
note_font "Bitstream Vera Sans Bold Bold Bold"
note_font_size 30
selected true
xpos -1209
ypos -474
bdwidth 493
bdheight 693
addUserKnob {20 mainTabTK l backdropTK}
addUserKnob {41 label_1 l label T BackdropNode1.label}
addUserKnob {22 rndClrs0 l "<font style=\"background-color:#3e4f5a\"> <img size=\"8\" src=\"Shaders.png\"> CG </font>" T "import colorsys\nn=nuke.thisNode()\nlist=\[u' CG ', u' FX ', u' 3D ', u' Key ', u'Cleanup', u' Ref ', u' Pub ', u'Important!']\nn\['icon'].setValue('Shaders.png')\nR,G,B= \[0.567, 0.301, 0.353]\nR,G,B=colorsys.hsv_to_rgb(R,G,B)\nn\['tile_color'].setValue( int('%02x%02x%02x%02x' % (R*255,G*255,B*255,255), 16 ))\nif ((n\['label'].getValue()=='') or (n\['label'].getValue() in list)):\n n\['label'].setValue(' CG ')\n\nallnodes=nuke.allNodes()\nlist=\[]\nnd_name='%s_backdrop' % ' CG '\ncurName=n\['name'].getValue().split(nd_name)\n\nif ((len(curName)>0) and (not curName\[0]=='')):\n for nd in allnodes:\n splt=nd.name().split(nd_name)\n if (len(splt)>1):\n num=splt\[1]\n if num.isdigit():\n list.append(int(num))\n if len(list)>0:\n next=int(sorted(list)\[-1])+1 \n else: next=1\n n\['name'].setValue('%s%s' % (nd_name,next))" +STARTLINE}
addUserKnob {22 rndClrs1 l "<font style=\"background-color:#3d3228\"> <img size=\"8\" src=\"Light.png\"> FX </font>" -STARTLINE T "import colorsys\nn=nuke.thisNode()\nlist=\[u' CG ', u' FX ', u' 3D ', u' Key ', u'Cleanup', u' Ref ', u' Pub ', u'Important!']\nn\['icon'].setValue('Light.png')\nR,G,B= \[0.079, 0.34, 0.242]\nR,G,B=colorsys.hsv_to_rgb(R,G,B)\nn\['tile_color'].setValue( int('%02x%02x%02x%02x' % (R*255,G*255,B*255,255), 16 ))\nif ((n\['label'].getValue()=='') or (n\['label'].getValue