CompStart

ProLessonsCoursesElementsSoftware

CompStart

Master visual effects with cutting-edge techniques.

Learning

CoursesLessonsPro FeaturesAssetsSoftware

Tools

Tech CheckDisplay CheckMotion BlurCIE 1931PhysLightNuke Tools

Company

InstructorMissionImpressumPrivacyTerms

Projects

Moray RenderEXR ConverterOCIO.ccNuke ToolsDerekVFX

Follow

YouTubeInstagramTikTokThreadsContact

© 2026 CompStart. All rights reserved.

Time Pin

ToolSets / Time
Time

2026-09-07

ToolSets/time/timePin.nk

time
offset
timing
utility
retime
frame
View on GitHub

Offsets input timing so a chosen source frame lands on a target frame using a simple from-to TimeOffset.

Time Pin wraps a TimeOffset so you can map one frame number to another. Set the from frame and the to frame; the node applies an offset of to minus from.

Use it when a plate or element needs a specific moment to hit a shot frame—match a hit, hold, or reference still without scrubbing offset values by hand. Current Frame buttons on both fields grab the timeline frame into from or to.

In the comp it behaves like a standard TimeOffset: downstream nodes see the shifted stream. Defaults are from 19 and to 30; change either control to retarget the pin.

Script code

set cut_paste_input [stack 0]
version 13.2 v4
push $cut_paste_input
Group {
 name timePin
 tile_color 0x421010ff
 selected true
 xpos -237
 ypos -175
 addUserKnob {20 User l timePin}
 addUserKnob {3 frame_from l from}
 frame_from 19
 addUserKnob {22 set_current_to l "Current Frame" -STARTLINE T "nuke.thisNode()\['frame_from'].setValue(nuke.frame())"}
 addUserKnob {3 frame_to l to t "nuke.thisNode()\['frame_to'].setValue(nuke.frame())"}
 frame_to 30
 addUserKnob {22 set_current_from l "Current Frame" -STARTLINE T "nuke.thisNode()\['frame_to'].setValue(nuke.frame())"}
 addUserKnob {26 "" +STARTLINE}
 addUserKnob {26 label_1 l "" +STARTLINE T "Time Pin v1.0"}
 addUserKnob {22 website l DerekVFX.ca +STARTLINE}
}
 Input {
  inputs 0
  name Input
  xpos -218
  ypos -215
 }
 TimeOffset {
  time_offset {{"frame_to - frame_from "}}
  time ""
  name TimeOffset1
  selected true
  xpos -218
  ypos -191
 }
 Output {
  name Output1
  xpos -184
  ypos -75
 }
end_group