|On this page|
This CHOP takes the channels coming in the first (Position) input, converts and records them into an internal storage array, and outputs the storage array as the CHOP output. The optional second (Active) input is used to enable and disable the recording.
During each frame that is being recorded, the Record CHOP uses only the values of the Position input at the current frame. The Type determines how the input values are converted. In one case, input values are recorded as-is or interpreted as a speed.
If Record is set to Auto Range, and the Active input goes on, and Houdini is playing, then any existing storage array is cleared, and the Position channels are recorded in a new storage array until Active goes off. To produce a single-frame recording, hold down the ⌃ Ctrl key during Auto Range recording.
The Mouse and Keyboard CHOPs are often attached to the Position and Active inputs respectively of the Record CHOP to perform the recording of channels from mouse movements, enabled by pressing a keyboard key (see the Keyboard CHOP).
When and how much to record.
Always records when playing forward.
Add the new input to already-recorded channels.
Creates an interval based on Active on/off.
Record can sample the time slice or a single frame.
How to compute missed input samples using interpolation.
The interpretation of the Position input.
Output values set to the input values as-is.
Input changes are treated as a speed. An input of
will cause the output to increase by 0.5 per time unit.
The input changes (times Gain A/B) are added to the output values. Only done when Active is on.
Input changes (times Gain A/B) are treated as a speed change. When Active is off, speed is 0. Output is current value + speed * timestep.
Speed & Hold
Like Speed except speed is held when Active is off.
Record can output single frames, a time slice, or the full animation range.
Initial values to use for position (output of CHOP).
Initial values to use for speed (for Speed Types).
Command menu to set the internal state to be the initial values above.
Command menu to read the current internal state into the initial values above.
Channels Per Limit
Number of consecutive channels to use Limit A before switching to Limit B.
Type of limiting function for sets A and B.
Clamp at the minimum/maximum value and hold.
At limit, continue channel at other end of min/max range.
At limit, bounce channel back within min/max range.
The minimum value of the channel.
The maximum value of the channel.
The Position input is multiplied by this gain factor.
Some of these parameters may not be available on all CHOP nodes.
To determine which channels get affected, some CHOPs have a scope string. Patterns can be used in the scope, for example
* (match all), and
? (match single character).
The following are examples of possible channel name matching options:
Matches a single channel name.
chan3 tx ty tz
Matches four channel names, separated by spaces.
Matches each channel that starts with
Matches each channel that has
foot in it.
? matches a single character.
t? matches two-character channels starting with t.
Matches number ranges giving
[xyz]matches three characters, giving channels
Sample Rate Match
The Sample Rate Match Options handle cases where multiple input CHOPs’ sample rates are different.
Resample At First Input’s Rate
Use rate of first input to resample others.
Resample At Maximum Rate
Resample to highest sample rate.
Resample At Minimum Rate
Resample to the lowest sample rate.
Error if Rates Differ
Does not accept conflicting sample rates.
The units for which time parameters are specified.
For example, you can specify the amount of time a lag should last for in seconds (default), frames (at the Houdini FPS), or samples (in the CHOP’s sample rate).
When you change the Units parameter, it does not convert the existing parameters to the new units.
Time Slicing is a feature which boosts cooking performance and reduces memory usage. Traditionally, CHOPs calculate the channel over its entire frame range. If the channel does need to be evaluated every frame, then cooking the entire range of the channel is unnecessary. It is more efficient to calculate only the fraction of the channel that is needed. This fraction is known as a Time Slice.
Causes the memory consumed by a CHOP to be released after it is cooked and the data passed to the next CHOP.
The Export prefix is prepended to CHOP channel names to determine where to export to.
For example, if the CHOP channel was named
geo1:tx, and the prefix was
/obj, the channel would be exported to
You can leave the Export Prefix blank, but then your CHOP track names need to be absolute paths, such as
Every CHOP has this option. Each CHOP gets a default color assigned for display in the Graph port, but you can override the color in the Common page under Graph Color. There are 36 RGB color combinations in the Palette.
Graph Color Step
When the graph displays the animation curves and a CHOP has two or more channels, this defines the difference in color from one channel to the next, giving a rainbow spectrum of colors.
The following examples include this node.
You can chain the Composite CHOP together to take two or more channels and do an ordered sequence blend. The Composite CHOP takes a control curve and uses it to determine which channel to use with each Composite CHOP working on two channels at a time, creating a sequence blend. The first Composite node processes the first and second channel, the second Composite node processes the result from the first node and the third channel, and so on.
A key component of this network is the Limit CHOP. It processes the control curve so the range is valid for the pair of channels being processed by the associated Composite node.