BackdropNode { inputs 0 name BackdropNode1 tile_color 0x969696ff label "Render \nCamera" note_font_size 42 selected true xpos -1305 ypos -490 bdwidth 284 bdheight 230 } BackdropNode { inputs 0 name BackdropNode2 tile_color 0x969696ff label "Projection\nCamera\n(Identical to the \nRender camera\nexcept for the \nfocal length)" note_font_size 42 selected true xpos -648 ypos -489 bdwidth 313 bdheight 376 } BackdropNode { inputs 0 name BackdropNode3 tile_color 0x969696ff label "Example Image\nWith Overscan" note_font_size 42 selected true xpos -56 ypos -776 bdwidth 336 bdheight 288 } BackdropNode { inputs 0 name BackdropNode4 tile_color 0x969696ff label "Reformat the \nformat to \nencompass the\nbounding box" note_font_size 42 selected true xpos -45 ypos 279 bdwidth 314 bdheight 233 } BackdropNode { inputs 0 name BackdropNode5 tile_color 0xedbf00ff label "DEMONSTRATION:\nEnable/disable\nto switch between\nbbox bypass\nand standard \nprojection" note_font_size 42 selected true xpos -1013 ypos 35 bdwidth 395 bdheight 336 } BackdropNode { inputs 0 name BackdropNode6 tile_color 0x969696ff label "Framehold on\nprojection frame" note_font_size 42 selected true xpos -997 ypos 447 bdwidth 352 bdheight 237 } BackdropNode { inputs 0 name BackdropNode7 tile_color 0x969696ff label "I left the 'crop' \ncheckbox enabled\nto simulate how this\nnode often can crop \nthe overscan, even \nwhen crop is disabled.\nNormally I would \nuntick crop" note_font_size 42 selected true xpos -106 ypos 615 bdwidth 423 bdheight 376 } BackdropNode { inputs 0 name BackdropNode8 tile_color 0x969696ff label "Add overscan\nas needed" note_font_size 42 selected true xpos -46 ypos 1514 bdwidth 300 bdheight 221 } BackdropNode { inputs 0 name BackdropNode9 tile_color 0x969696ff label "Projection \ngeometry" note_font_size 42 selected true xpos -32 ypos 1127 bdwidth 403 bdheight 276 } StickyNote { inputs 0 name StickyNote1 label "Projection camera's focal length \n= \nRender camera's focal length\n/\nImage scaling\n" note_font_size 20 selected true xpos -620 ypos -638 } Camera2 { inputs 0 translate {0 0 {curve x1 6 x10 10}} name Camera1 label "Render Cam" selected true xpos -1191 ypos -360 } Dot { name Dot4 selected true xpos -1167 ypos -57 } set N26d60400 [stack 0] Dot { name Dot2 selected true xpos -1167 ypos 1652 } Camera2 { inputs 0 translate {0 0 {curve x1 6 x10 10}} focal {{Camera1.focal/Reformat1.scale}} name Camera2 label "Projection Cam" selected true xpos -526 ypos -326 } Dot { name Dot5 selected true xpos -502 ypos 193 } push $N26d60400 Dot { name Dot3 selected true xpos -827 ypos -57 } Switch { inputs 2 which 1 name Switch1 selected true xpos -861 ypos 189 } FrameHold { first_frame 1 name FrameHold1 selected true xpos -861 ypos 575 addUserKnob {20 User} addUserKnob {22 setCurrentFrame l "Set current frame" -STARTLINE T "import nuke\nnuke.thisNode()\['first_frame'].setValue(nuke.frame())"} } Dot { name Dot1 selected true xpos -827 ypos 803 } Group { inputs 0 name TestImage selected true xpos 65 ypos -639 postage_stamp true } Constant { inputs 0 channels rgb color {1 0 0 1} format "512 512 0 0 512 512 1 square_512" name Constant1 xpos -224 ypos -242 } Transform { translate {256 256} center {256 256} name Transform1 xpos -224 ypos -153 } Dot { name Dot1 xpos -190 ypos -101 } CheckerBoard2 { inputs 0 format "1024 1024 0 0 1024 1024 1 square_1K" name CheckerBoard1 xpos -88 ypos -256 } Merge2 { inputs 2 name Merge1 xpos -88 ypos -105 } Reformat { format "512 512 0 0 512 512 1 square_512" resize none pbb true name Reformat1 xpos -88 ypos -35 } Add { name Add1 label "Break concatenation for\ndemonstration purposes" xpos -88 ypos 32 } Output { name Output1 xpos -88 ypos 162 } end_group Reformat { type scale scale 2 resize none pbb true name Reformat1 selected true xpos 65 ypos 386 disable {{parent.Switch1.disable}} } Project3D2 { inputs 2 name Project3D1 selected true xpos 65 ypos 799 } Reformat { inputs 0 format "512 512 0 0 512 512 1 square_512" pbb true name Reformat3 selected true xpos 227 ypos 1201 } Card2 { uniform_scale 10 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 Card1 selected true xpos 227 ypos 1276 } Dot { name Dot6 selected true xpos 261 ypos 1346 } ApplyMaterial { inputs 2 name ApplyMaterial1 selected true xpos 65 ypos 1342 } Reformat { inputs 0 format "512 512 0 0 512 512 1 square_512" pbb true name Reformat2 selected true xpos 296 ypos 1642 } ScanlineRender { inputs 3 conservative_shader_sampling false overscan 50 shutteroffset centred motion_vectors_type distance MB_channel forward name ScanlineRender1 selected true xpos 65 ypos 1648 } FrameHold { first_frame 10 name FrameHold selected true xpos 65 ypos 1826 } Viewer { frame 10 frame_range 1-10 name Viewer1 selected true xpos 284 ypos 2059 }