DerekVFX LogoDerekVFX

Blog

Nuke

Projects

Photography

Filmography

OCIO.ccExternal link

DerekVFX LogoDerekVFX

©2009 - 2026 DerekVFX

ContactIMDBLinkedInGitHubOCIO.ccExternal link
←ToolSets / Utility

frameHoldAdvanced

Utility2026-08-04ToolSets/utility/frameHoldAdvanced.nk
View on GitHub

ToolSets/utility/frameHoldAdvanced.nk

Script Code

set cut_paste_input [stack 0]
version 12.1 v4
push $cut_paste_input
Group {
name frameHoldAdvanced
tile_color 0x421010ff
selected true
xpos -1101
ypos 352
addUserKnob {20 User l template}
addUserKnob {41 input_frame l "input frame" T FrameHold1.input_frame}
addUserKnob {4 rounding M {rint floor ceil none}}
addUserKnob {26 ""}
addUserKnob {26 lbl l "" +STARTLINE T "Template v1.0"}
addUserKnob {22 btn l DerekVFX.ca T "nuke.tcl('start', 'https://derekvfx.ca')" +STARTLINE}
}
Input {
inputs 0
name Input
xpos 447
ypos 61
}
set Nd764800 [stack 0]
Output {
name Output1
xpos 447
ypos 1055
}
push $Nd764800
FrameHold {
first_frame 2
name FrameHold1
xpos 584
ypos 337
addUserKnob {20 User}
addUserKnob {4 rounding M {rint floor ceil none}}
rounding floor
addUserKnob {7 input_frame}
input_frame 0.332
addUserKnob {3 output_frame}
output_frame {{"\[python -execlocal node\\ =\\ nuke.thisNode()\\nrounding\\ =\\ node.knob('rouding').getValue()\\ninput_frame\\ =\\ node.knob('input_frame').getValue()\\noutput\\ =\\ 0\\nif\\ rounding\\ ==\\ 'rint':\\n\\ \\ \\ \\ output\\ =\\ input_frame\\nelif\\ rounding\\ ==\\ 'floor':\\n\\ \\ \\ \\ output\\ =\\ 10\\nelif\\ rounding\\ ==\\ 'ceil':\\n\\ \\ \\ \\ output\\ =\\ 20\\nelif\\ rounding\\ ==\\ 'none':\\n\\ \\ \\ \\ output\\ =\\ 30\\nret\\ output]"}}
}
end_group