移動先: 概要 戻り値 キーワード 関連項目 フラグ MEL の例
clipSchedule [-absolute boolean] [-absoluteRotations boolean] [-allAbsolute] [-allRelative] [-blend uint uint] [-blendNode uint uint] [-blendUsingNode string] [-character] [-clipIndex uint] [-cycle float] [-defaultAbsolute] [-enable boolean] [-group boolean] [-groupIndex uint] [-groupName string] [-hold time] [-insertTrack uint] [-instance string] [-listCurves] [-listPairs] [-lock boolean] [-mute boolean] [-name string] [-postCycle float] [-preCycle float] [-remove] [-removeBlend uint uint] [-removeEmptyTracks] [-removeTrack uint] [-rotationsAbsolute] [-scale float] [-shift int] [-shiftIndex uint] [-solo boolean] [-sourceClipName] [-sourceEnd time] [-sourceStart time] [-start time] [-track uint] [-weight float] [-weightStyle uint]
clipSchedule は「元に戻す」が可能、「照会」が可能、「編集」が可能です。
このコマンドを使用して、Trax エディタのクリップとブレンドを作成、編集、照会します。これは、キャラクタにアタッチされた clipScheduler ノードに動作します。照会モードでフラグを指定していない場合、次の形式の文字配列を返します: (clipName,clipIndex,clipStart,clipSourceStart,clipSourceEnd,clipScale,clipPreCycle,clipPostCycle,clipHold)string | クリップ名 |
戻り値の型は照会モードでは照会フラグが基になります。
ロング ネーム(ショート ネーム) | 引数型 | プロパティ | ||
---|---|---|---|---|
-clipIndex(-ci)
|
uint
|
|||
|
||||
-start(-s)
|
time
|
|||
|
||||
-sourceStart(-ss)
|
time
|
|||
|
||||
-sourceEnd(-se)
|
time
|
|||
|
||||
-preCycle(-prc)
|
float
|
|||
|
||||
-postCycle(-poc)
|
float
|
|||
|
||||
-hold(-ph)
|
time
|
|||
|
||||
-scale(-sc)
|
float
|
|||
|
||||
-absolute(-abs)
|
boolean
|
|||
|
||||
-absoluteRotations(-abr)
|
boolean
|
|||
|
||||
-allAbsolute(-aa)
|
|
|||
|
||||
-allRelative(-ar)
|
|
|||
|
||||
-rotationsAbsolute(-ra)
|
|
|||
|
||||
-defaultAbsolute(-da)
|
|
|||
|
||||
-instance(-in)
|
string
|
|||
|
||||
-remove(-rm)
|
|
|||
|
||||
-enable(-en)
|
boolean
|
|||
|
||||
-blend(-b)
|
uint uint
|
|||
|
||||
-blendUsingNode(-bun)
|
string
|
|||
|
||||
-blendNode(-bn)
|
uint uint
|
|||
|
||||
-removeBlend(-rb)
|
uint uint
|
|||
|
||||
-character(-ch)
|
|
|||
|
||||
-listCurves(-lc)
|
|
|||
|
||||
-name(-n)
|
string
|
|||
|
||||
-sourceClipName(-scn)
|
|
|||
|
||||
-weight(-w)
|
float
|
|||
|
||||
-weightStyle(-ws)
|
uint
|
|||
|
||||
-lock(-l)
|
boolean
|
|||
|
||||
-solo(-so)
|
boolean
|
|||
|
||||
-mute(-m)
|
boolean
|
|||
|
||||
-track(-t)
|
uint
|
|||
|
||||
-insertTrack(-it)
|
uint
|
|||
|
||||
-removeTrack(-rt)
|
uint
|
|||
|
||||
-removeEmptyTracks(-ret)
|
|
|||
|
||||
-shiftIndex(-shi)
|
uint
|
|||
|
||||
-shift(-sh)
|
int
|
|||
|
||||
-listPairs(-lp)
|
|
|||
|
||||
-cycle(-c)
|
float
|
|||
|
||||
-group(-grp)
|
boolean
|
|||
|
||||
-groupName(-gn)
|
string
|
|||
|
||||
-groupIndex(-gri)
|
uint
|
|||
|
: コマンドの作成モードで使用可能なフラグ | : コマンドの編集モードで使用可能なフラグ |
: コマンドの照会モードで使用可能なフラグ | : 1 つのコマンドで複数回使用可能なフラグ |
// First, create a character to hold the clips. The character will be // a 3-bone skeleton named "arm". // select -d; joint -p 0 0 0 ; joint -p 0 4 0 ; joint -e -zso -oj xyz joint1; joint -p 0 8 -1 ; joint -e -zso -oj xyz joint2; joint -p 0 9 -2 ; joint -e -zso -oj xyz joint3; select -r joint1 joint2 joint3; character -name arm; // Create some animation for the character. For this example the animation will // be quite trivial. // select -r joint3; currentTime 0; setKeyframe joint3.rx; currentTime 10; setKeyframe -v 90 joint3.rx; currentTime 20; setKeyframe -v 0 joint3.rx; // Create a clip for the current animation named "handWave" // clip -startTime 0 -endTime 20 -name "handWave" "arm"; // Query the name of the clipScheduler for this character // character -q -sc "arm"; // Result: armScheduler1 // Create a 2nd animation for the character. // select -r joint2; currentTime 0; setKeyframe "arm"; currentTime 10; setKeyframe -v 45 joint2.rx; setKeyframe -v -20 joint2.ry; currentTime 20; setKeyframe -v 0 joint2.rx; setKeyframe -v 20 joint2.ry; // Create a clip for the current animation named "elbowWave" // clip -startTime 0 -endTime 20 -name "elbowWave" "arm"; // Instance handeWave at time 10 // clipSchedule -instance handWave -s 10 "armScheduler1"; // Query the clip index of the latest instance of handWave. Each instance // of a clip received a unique clipIndex. The clip index is used to // edit and query data for existing clips. // clipSchedule -name handWave1 -q -ci armScheduler1; // Query whether the clip associated with index 2 is enabled or not // clipSchedule -ci 2 -q -enable "armScheduler1"; // Query the name of the clip associated with index 2 // clipSchedule -ci 2 -q -n "armScheduler1"; // Query the weight of the clip associated with index 2 // clipSchedule -ci 2 -q -weight "armScheduler1"; // Modify the elbowWave clip to start at frame 10 instead of frame 0 // clipSchedule -start 10 -ci 1 "armScheduler1"; // Trim the start of the elbowWave clip to // use the animation starting at frame 5 instead 0 // clipSchedule -sourceStart 5 -ci 1 "armScheduler1"; // Trim the end of the elbowWave clip to // use the animation up to frame 15 instead 20 // clipSchedule -sourceEnd 15 -ci 1 "armScheduler1"; // Modify the handWave clip to have two cycles instead of 1 // clipSchedule -postCycle 1 -ci 0 "armScheduler1"; // list the animation curves associated with a particular clip // clipSchedule -ci 2 -listCurves "armScheduler1"; // Move a particular clip to a particular track // clipSchedule -track 2 -ci 0 "armScheduler1"; // Add a blend between clips 1 and 2 // clipSchedule -b 1 2 "armScheduler1"; // Query the name of the blendNode between clips 1 and 2 // clipSchedule -bn 1 2 -q "armScheduler1"; // Lock the first track and then query its state // clipSchedule -track 1 -e -lock 1 "armScheduler1"; clipSchedule -track 1 -q -lock "armScheduler1"; // Query the existing clips in the scheduler. // In query mode, returns an array of strings in this form: // (clipName,index,start,sourceStart,sourceEnd,scale,preCycle,postCycle,hold) // // In this case there are three scheduled clips: // 2 instances of "handWave" and 1 of "elbowWave". The clip indices for "handWave" are 0 // and 3. The clip index for "elbowWave" is 2. Note that the clip indices can be sparse // since a clip maintains its index as long as it is in the schedule (the TraX editor). // clipSchedule -q "armScheduler1"; // Result: handWave,0,0.000000,0.000000,20.000000,1.000000,0.00000,2.00000 elbowWave,1,0.000000,5.000000,15.000000,1.000000,0.00000,1.00000 handWave,2,10.000000,0.000000,20.000000,1.000000,0.00000,1.00000 // // Shift clips 1 and 2 up 3 tracks // clipSchedule -sh -3 -shi 1 -shi 2 "armScheduler1"; // Print out which anim curves animate which channels for the // clip with an index of 2. // string $out[] = `clipSchedule -ci 2 -q -lp "armScheduler1"`; string $pair; for ($pair in $out) { string $buff[]; tokenize $pair " " $buff; print ($buff[1] + " animates " + $buff[0] + ".\n"); }