Thanks to all for your responses regarding how to do a “simple” pixel shift!
Who would have thought that there were so many ways to get the job done? But then, it *is* Nuke, right? ;^) I’ll be comparing the various approaches to see which one(s) I like the best and possibly coming up with a tweaked version that combines features from several. One thing I like about Frank’s version is that he linked to the motion blur controls. That’s a cool feature, since you could, for instance, have a cycling motion-blurred background image that would work for looking outside a moving vehicle window. At the moment, I’m using the pixels offsets for interactive shifting of Lat-Long HDRs, projected onto a sphere. So, interactive speed is important. In any case, IF THE FOUNDRY IS READING THIS THEAD — PLEASE ADD A PIXEL SHIFT NODE! (Deke...?) The fact that so many people have had to reinvent this functionality must mean that it is a basic tool that ought to be part of Nuke. ...All in favor, say “Aye!” ;^) Thanks again. 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/ "It is the nature of man to rise to greatness if greatness is expected of him." - John Steinbeck On Jun 22, 2014, at 11:20 PM, Richard Bobo <[email protected]> wrote: > [email protected], > > Your UVTile version seems to work well, also - 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 > > > > > > > > > On Jun 22, 2014, at 12:16 PM, [email protected] wrote: > >> Hi, >> >> you might also use the UVTile node: >> >> >> Group { >> name Group1 >> selected true >> xpos -98 >> ypos 77 >> addUserKnob {20 User} >> addUserKnob {41 translate T UVTile3.translate} >> addUserKnob {41 scale T UVTile3.scale} >> addUserKnob {26 ""} >> addUserKnob {41 samples T ScanlineRender2.samples} >> } >> Camera2 { >> inputs 0 >> focal {{parent.Card2.lens_in_focal}} >> haperture {{parent.Card2.lens_in_haperture}} >> vaperture {{parent.Card2.in_vaperture}} >> name Camera2 >> label "haperture/vaperture: \[expression haperture/vaperture]" >> xpos 365 >> ypos 271 >> } >> set N2e337100 [stack 0] >> push $N2e337100 >> Input { >> inputs 0 >> name Input1 >> xpos 248 >> ypos 75 >> } >> Dot { >> name Dot3 >> xpos 282 >> ypos 141 >> } >> set N2e3377e0 [stack 0] >> UVTile2 { >> wrap_u repeat >> wrap_v repeat >> translate {0.5 0.5} >> name UVTile3 >> xpos 355 >> ypos 214 >> } >> push $N2e3377e0 >> Card2 { >> z 10 >> lens_in_focal 14.2 >> lens_in_haperture 18 >> control_points {3 3 3 6 >> >> 1 {-0.5 -0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666865 0} 0 {0 0 >> 0} 0 {0 0 0} >> 1 {0 -0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666865 0} >> 0 {0 0 0} 0 {0.5 0 0} >> 1 {0.5 -0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666865 0} 0 {0 0 >> 0} 0 {1 0 0} >> 1 {-0.5 0 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0.1666666716 0} 0 {0 >> -0.1666666716 0} 0 {0 0.5 0} >> 1 {0 0 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0.1666666716 0} 0 >> {0 -0.1666666716 0} 0 {0.5 0.5 0} >> 1 {0.5 0 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0.1666666716 0} 0 {0 >> -0.1666666716 0} 0 {1 0.5 0} >> 1 {-0.5 0.5 0} 0 {0.1666666865 0 0} 0 {0 0 0} 0 {0 0 0} 0 {0 -0.1666666865 >> 0} 0 {0 1 0} >> 1 {0 0.5 0} 0 {0.1666666716 0 0} 0 {-0.1666666716 0 0} 0 {0 0 0} 0 {0 >> -0.1666666865 0} 0 {0.5 1 0} >> 1 {0.5 0.5 0} 0 {0 0 0} 0 {-0.1666666865 0 0} 0 {0 0 0} 0 {0 -0.1666666865 >> 0} 0 {1 1 0} } >> name Card2 >> label "width/height: \[expression input.width/input.height]" >> xpos 465 >> ypos 132 >> addUserKnob {20 User} >> addUserKnob {7 in_vaperture l "lens-in vaperture" R 0 50} >> in_vaperture {{"(\[value input.height]*\[value lens_in_haperture])/\[value >> input.width]"}} >> } >> ApplyMaterial { >> inputs 2 >> name ApplyMaterial2 >> xpos 465 >> ypos 214 >> } >> Scene { >> inputs 2 >> name Scene2 >> xpos 475 >> ypos 271 >> } >> push $N2e3377e0 >> Shuffle { >> red black >> green black >> blue black >> alpha black >> name Shuffle6 >> xpos 248 >> ypos 363 >> } >> ScanlineRender { >> inputs 3 >> transparency false >> ztest_enabled false >> filter Impulse >> samples 10 >> motion_vectors_type distance >> name ScanlineRender2 >> selected true >> xpos 465 >> ypos 363 >> } >> Output { >> name Output1 >> xpos 465 >> ypos 477 >> } >> end_group >> >> >> >> >> >> On Fri, Jun 20, 2014 at 1:06 AM, Richard Bobo <[email protected]> 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
