AddClip

Introduced

v1.0

Categories

animmixer

Description

Creates a Clip and adds it to the Mixer of the specified Model. A clip is an instance of an ActionSource (action or shape animation) or an audio Source object.

Scripting Syntax

oReturn = AddClip( Model, Source, [Compound], [Track], [Time], [Name], [ConnectionMappingTemplate], [ValueMappingTemplate], [ShareParent] );

Return Value

Returns a Clip object.

Parameters

Parameter Type Description
Model String Model to add the clip to.
Source String Source for the clip. Typically, a "source" is an action.
Compound String Compound container (track owner) to add this clip to.
Track String Track to add this clip to.
Time Double Frame at which to add the clip.

Default Value: Current frame

Name String Name for the new clip.
ConnectionMappingTemplate String The connection mapping template to use for the new clip.

Default Value: The active connection mapping template.

ValueMappingTemplate String The value mapping template to use for the new clip.

Default Value: The active value mapping template

ShareParent Boolean Share the source (when coming from another model).

Default Value: True

Examples

VBScript Example

'
' This example creates a simple Action and instantiates it
' on two different objects using a connection mapping template.
' It shows very basic mixer scripting -- creating Actions, tracks
' and clips, as well as a simple mapping template.
'
' Create objects for our example.
set oSphere = CreatePrim( "Sphere", "MeshSurface" )
set oCone = CreatePrim( "Cone", "MeshSurface" )
posParams = "/kine.local.posx,kine.local.posy,kine.local.posz"
' Make an Action with it moving diagonally over 20 frames.
SetPositionKey oSphere, 1, -5, -5, 0
SetPositionKey oSphere, 20, 5, 5, 0
set oSource = StoreAction( , oSphere & posParams, 2, "Diagonal", True, 1, 20 )
' Create a track and instantiate the Action onto it, starting at frame 10.
set oTrack = AddTrack( "Scene_Root", , 0 )
set oClip = AddClip( "Scene_Root", oSource, , oTrack, 10 )
' Make the clip play with three bounce cycles.
SetValue oClip & ".actionclip.timectrl.extrapaft_type", 3
SetValue oClip & ".actionclip.timectrl.extrapaft_nbbounces", 3
' Now create a connection mapping template so that the same
' Action source can be applied to the cone.
CreateConnectionMap oCone, oSphere, oCnxMap
' Use the connection map to add another clip, so it will
' drive the cone instead.  We don't specify a track so it
' will create a new one for the clip.
set oClip = AddClip( "Scene_Root", oSource, , , 1, "Slow", oCnxMap )
' Slow the cone's clip to play at one-quarter speed.
SetValue oClip & ".actionclip.timectrl.scale", 1/4
'==================================================
' Helper method to key an object somewhere at a given frame.
'==================================================
sub SetPositionKey( in_oObj, in_frame, in_posX, in_posY, in_posZ )
        Translate in_oObj, in_posX, in_posY, in_posZ, siAbsolute, siParent, siObj, siXYZ
        SaveKey in_oObj & posParams, in_frame
end sub

See Also

StoreAction Clip