Go to: Related nodes. Attributes.

The clipLibrary node manages the source clips and their animation curves for a single character. The clipLibrary's compute method is able to evaluate the attached clips to obtain their attribute values at any time, independent of the current scene time.

While the clipLibrary node manages source clips, the clipScheduler node manages instanced clips. In other words, the clipLibrary handles the raw clip data, and the clipScheduler manages the placement of the clips on the timeline (clips placed in Trax).

Each character will be associated with at most a single clipLibrary and a single clipScheduler.

The clipLibrary node is able to keep track of source clips and their associated animCurves by connections in the dependency graph. Each source clip is represented by an animClip node which is connected to the clipLibrary's sourceClip attribute. The index of the array attribute where the sourceClip attribute is connected is used as an unique index to identify the connected source clip.

Animation curves are connected to the clipLibrary using function attributes. The function attributes allow the library to evaluate the curves at times other than the current scene time. The indices of the attributes where the animation curves are connected are used to correlate the curve to its associated clip and channel, as follows:

Since the clipLibrary manages its associated clips via connections, it is important that all required connections are made when setting up clips. The API contains two function sets: MFnClip and MFnCharacter, which will make the proper clipLibrary connections when you create clips using the API.

Node nameParentsClassificationMFn typeCompatible function sets
clipLibrarynodeanimationkClipLibrarykBase
kNamedObject
kDependencyNode
kClipLibrary

Related nodes

clipScheduler, characterMap

Attributes (20)

activeClip, characterMapping, characterdata, clip, clipEval, clipEvalList, clipEval_Hidden, clipEval_Inmap, clipEval_InmapFrom, clipEval_InmapTo, clipEval_Outmap, clipEval_OutmapFrom, clipEval_OutmapTo, clipEval_Raw, clipFunction, clipIndexMapping, clipName, duration, sourceClip, start

Long name (short name)TypeDefaultFlags
activeClip (act) integer-1outputinputstorable
The index of the clip which is active. Keyframes set onto a character go into the active clip. An active value of -1 indicates that the "default" clip is active. The default clip is not stored in the clip library, but is instead hooked directly to the character. The clip command is used to name the default clip and move it into the clip library. When a default clip is moved into the clip library, the active clip remains -1 and new keys go into the new default clip.
characterdata (cd) compoundn/aarrayoutputinputconnectablestorablehidden
An array of character data for the characters managed by this library. The character data allows the clipLibrary to correlate the animCurves of each clip to their associated character channel.
characterMapping (cm) characterMappingNULLoutputinputconnectablestorablehidden
Stores the mapping of clip data to character attributes
clipIndexMapping (cim) intArrayemptyoutputinputconnectablestorablehidden
Stores a unique index for each channel in the character.
clip (cl) Messagen/aarrayoutputinputconnectable
The clip message is connected to any schedulers that use the clip. Array indices for the clip attribute line up with those for the sourceClip attribute.
clipEvalList (cel) compoundn/aarrayoutputinputconnectablestorablehidden
An array of clipEvals, one entry per clip.
clipEval (cev) compoundn/aarrayoutputinputconnectablestorablehidden
An array of function attributes. The animation curves and expressions that drive this clip get connected to the _Raw attribute that is a child of this attribute.
clipEval_Hidden (cevh) functionNULLoutputinputhidden
For Internal Use Only
Function being applied at this attribute with the mappings cached for efficiency
clipEval_Raw (cevr) functionNULLoutputinputconnectable
For Internal Use Only
Actual function being applied at this attribute
clipEval_Inmap (cevi) compoundn/aarrayoutputinputconnectablestorable
For Internal Use Only
Mapping of node's function input parameters to function data input parameters
clipEval_InmapTo (cevit) short0outputinputconnectablestorable
For Internal Use Only
Node's internal function input parameter index
clipEval_InmapFrom (cevif) short0outputinputconnectablestorable
For Internal Use Only
Function data input parameter index
clipEval_Outmap (cevo) compoundn/aarrayoutputinputconnectablestorable
For Internal Use Only
Mapping of node's function output parameters to function data output parameters
clipEval_OutmapTo (cevot) short0outputinputconnectablestorable
For Internal Use Only
Node's internal function output parameter index
clipEval_OutmapFrom (cevof) short0outputinputconnectablestorable
For Internal Use Only
Function data output parameter index
clipFunction (cf) functionNULLoutputconnectable
The clip function gets connected to a scheduler that manages the placement, scale and blending of the clips. The scheduler evaluates the clip function to determine the clip.
clipName (cn) stringTmultiSharedObject::create<TdataString>"unusedClip"arrayoutputinputconnectable
This attribute is not used.
duration (du) time0filmarrayoutputinputconnectablehidden
This attribute is obsolete.
sourceClip (sc) Messagen/aarrayoutputinputconnectable
The source clips associated with this library are connected to this attribute. Array indices for the sourceClip attribute line up with those for the clip attribute.
start (st) time0filmarrayoutputinputconnectablehidden
This attribute is obsolete.