Mads, I don’t know about being lazy… Your one-node version seems to work very well!
That expression node is just a bit intimidating, though… ;^) Thanks! Rich Rich Bobo Senior VFX Compositor Armstrong White Email: [email protected] http://armstrong-white.com/ Email: [email protected] Mobile: (248) 840-2665 Web: http://richbobo.com/ "The glory of friendship is not the outstretched hand, nor the kindly smile, nor the joy of companionship; it is the spiritual inspiration that comes to one when he discovers that someone else believes in him and is willing to trust him with his friendship." - Ralph Waldo Emerson On Jun 22, 2014, at 4:17 PM, Mads Lund <[email protected]> wrote: > If you were really lazy you could do it in a single node, with scale and all > that but it would be a bit slower: > > set cut_paste_input [stack 0] > version 8.0 v4 > push $cut_paste_input > Group { > name Tile > selected true > xpos 297 > ypos -127 > addUserKnob {20 User} > addUserKnob {41 Transform T Tile.Transform} > addUserKnob {41 scale l "Scale Multiplier" T Tile.scale} > } > Input { > inputs 0 > name Input1 > xpos -472 > ypos 2 > } > Expression { > temp_name0 mx > temp_expr0 fmod((x+(width*1000)-Transform.x)*scale.w,width) > temp_name1 my > temp_expr1 fmod((y+(height*1000)-Transform.y)*scale.h,height) > expr0 r(mx,my) > expr1 g(mx,my) > expr2 b(mx,my) > channel3 {none none none -rgba.alpha} > name Tile > selected true > xpos -472 > ypos 67 > addUserKnob {20 User} > addUserKnob {12 Transform} > Transform {320 0} > addUserKnob {14 scale R 0 100} > scale 6.2 > } > Output { > name Output1 > xpos -472 > ypos 142 > } > end_group > > > > > > On Sun, Jun 22, 2014 at 7:36 PM, Arno Beekman <[email protected]> wrote: > here's how I usually do this > In Transform1 you can move/shift the edges... > > > > Reformat { > type scale > scale 2 > filter Impulse > name Reformat1 > selected true > xpos -356 > ypos -52 > } > Tile { > rows 2 > columns 2 > filter Impulse > name Tile1 > selected true > xpos -356 > ypos -28 > } > Transform { > center {{width/2 x1 0} {height/2 x1 0}} > filter Impulse > black_outside false > name Transform1 > selected true > xpos -356 > ypos -4 > } > Reformat { > type scale > scale 0.5 > resize none > filter Impulse > pbb true > name Reformat2 > selected true > xpos -356 > ypos 20 > } > RotoPaint { > output rgb > cliptype none > curves {{{v x3f99999a} > {f 0} > {n > {layer Root > {f 0} > {t x44000000 x43c00000} > {a}}}}} > toolbox {selectAll { > { selectAll str 1 ssx 1 ssy 1 sf 1 } > { createBezier str 1 ssx 1 ssy 1 sf 1 sb 1 } > { createOpenSpline str 1 ssx 1 ssy 1 sf 1 sb 1 } > { createBezierCusped str 1 ssx 1 ssy 1 sf 1 sb 1 } > { createBSpline str 1 ssx 1 ssy 1 sf 1 sb 1 } > { createEllipse str 1 ssx 1 ssy 1 sf 1 sb 1 } > { createRectangle str 1 ssx 1 ssy 1 sf 1 sb 1 } > { createRectangleCusped str 1 ssx 1 ssy 1 sf 1 sb 1 } > { brush str 1 ssx 1 ssy 1 sf 1 sb 1 } > { eraser src 2 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { clone src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { reveal src 3 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { dodge src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { burn src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { blur src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { sharpen src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } > { smear src 1 str 1 ssx 1 ssy 1 sf 1 sb 1 } > } } > toolbar_source_transform_center {512 384} > createNewTrack {{-1} "-1\t(none)\t-1" "1000\tNew Track Layer\t1000"} > name RotoPaint1 > selected true > xpos -432 > ypos 57 > } > Transform { > translate {{"floor( width/2 - parent.Transform1.translate )"} {"floor( > height/2 - parent.Transform1.translate )"}} > center {1024 768} > filter Impulse > black_outside false > name Transform2 > selected true > xpos -356 > ypos 97 > } > > > gr > arno > > > > On 20-06-14 01:06, Richard Bobo wrote: >> Hi all, >> >> I have found several gizmos that will do a simple pixel shift on an image — >> x & y offsets that wraparound. However, I keep searching in vain for a way >> to do it with a built-in Nuke node. Isn’t there any way? I guess that’s why >> these gizmos exist..? (8^\ A big thank you to anyone who can tell me >> about a Nuke node that can do it! >> >> Thanks, >> Rich >> >> >> Rich Bobo >> Senior VFX Compositor >> Armstrong White >> Email: [email protected] >> http://armstrong-white.com/ >> >> Email: [email protected] >> Mobile: (248) 840-2665 >> Web: http://richbobo.com/ >> >> "The world stands aside to let anyone pass who knows where he is going." >> - David Starr Jordan >> >> >> >> >> >> >> >> >> >> >> _______________________________________________ >> Nuke-users mailing list >> [email protected], http://forums.thefoundry.co.uk/ >> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users > > > _______________________________________________ > Nuke-users mailing list > [email protected], http://forums.thefoundry.co.uk/ > http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users > > _______________________________________________ > Nuke-users mailing list > [email protected], http://forums.thefoundry.co.uk/ > http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
_______________________________________________ Nuke-users mailing list [email protected], http://forums.thefoundry.co.uk/ http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-users
