Time Slice CHOP

From TouchDesigner 099 Wiki

Summary

The Time Slice CHOP outputs a time slice of samples. It is used to generate smooth in-betweens when TouchDesigner cannot cook/draw fast enough and keep up with the animation's frames per second. When you send it to a Record CHOP or Gesture CHOP, you will see the channels recorded and playing back more smoothly.

The number and names of channels does not change between input and output, but the output's frame range is a time slice: it goes from the previous frame that TouchDesigner cooked plus one, to the current frame.

For example, assume the TouchDesigner frames per second is four frames to remain realtime. Say the input to the Time Slice CHOP is a slider which only gets sampled when TouchDesigner draws. We will have slider values for frames 231 and 235, but there are no slider values for frames 232, 233 and 234, the current frame is 235, and the previous frame that TouchDesigner cooked and drew was frame 231. It had to skip.

When the Method is set to Linear in this example, the Time Slice CHOP will output a "time slice" which is a 4-sample CHOP for frames 232 to 235, and the values at frames 232 to 234 will be the values interpolated between the slider at frames 231 and 235.

Therefore any CHOPs after the Time Slice CHOP, like Gesture, Record or Lag CHOP will get smooth data going into it, even though TouchDesigner isn't cooking every frame.

PythonIcon.png timesliceCHOP_Class

Parameters - Time Slice Page

Method - How to sample the input CHOP to create the output time slice. If the input CHOP is not time sliced and lies outside the current time slice region, its extend regions will be sampled.

  • Hold - Sample the input at the current time each cook to produce a constant valued time slice.
  • Linear - Sample the input at the current time each cook and interpolate from the last cook value to this current value.
  • Trim - Output the input, trimmed to the current time slice range.

Quaternion Blend - Rotation channels blended using quaternions. Channels must be tagged as rotation channels (For example with the Attribute CHOP or Object CHOP).

Standard Options and Local Variables

None.