Back to Node List

Time Source

time_source

Outputs normalized time (0.0-1.0) and frame number for CHOP-style animation

Reviewed
Guide available
The node name and summary are available in English. Port, parameter, and article details are currently shown in Japanese.

Output Ports

NameTypeDescription
時間
time
Float
正規化時間 (0.0〜1.0)
フレーム
frame
Int
現在のフレーム番号
総フレーム数
total_frames
Int
総フレーム数
進捗
progress
Float
滑らかな進捗 (0.0〜1.0)

Overview

The animation clock. When animation_render evaluates every frame, only this node outputs different values for each one: progress from 0 to 1 and frame number. Anything that moves in the graph ultimately draws its value from here.

Usage tips

  • The basic connection sends progress from 0 to 1 into a waveform node: motion (follows time automatically when unconnected) → parameter to animate.
  • Choose the output by purpose:
    • progress — percentage through the whole animation; the standard for motion
    • frame — current frame number; branch by frame together with switch or compare
    • time / total_frames — build custom progress control in a formula such as expression_float
  • Raw 0–1 progress is rarely used directly. Convert it into useful motion with remap for range, ease_in_out for easing, or a waveform for back-and-forth and loops.
  • Distribute one Time Source to several parameters, such as driving arm rotation and body bobbing from the same clock.

Common pitfalls

  • Preview values remain 0: this is normal. Ordinary evaluation uses time=0, frame=0. Per-frame values flow only while animation_render evaluates. Select Animation Render and use its playback preview to check motion.
  • The last and first frames do not connect: progress includes both endpoints from 0 to 1. For loops, insert a periodic waveform such as motion (Rotate) and make one cycle equal the total frame count.

Technical details

  • Ordinary non-animation evaluation outputs time=0.0, frame=0, total_frames=1, and progress=0.0.
  • Multi-frame evaluation by AnimationRender outputs different values for each frame.
  • progress is calculated as frame / (total_frames - 1); when total_frames=1 it is 0.0.
  • In the current AnimationRender evaluation, time is the same normalized time. It is not seconds.

Examples

Connect TimeSource → Float operation → Transform movement to create animation whose position changes on every frame.

Related nodes

  • animation_render — runs this clock and is almost always paired with it
  • motion / motion / motion — convert progress to oscillation, looping, or blinking
  • remap / ease_in_out — convert the value range and add easing
  • keyframe_clip — create motion from keyframes instead of a waveform
Back to Node List
Time Source — PixPipeline Node Reference