addNewKey と deleteKeys を除き、deleteKey、selectKeys、moveKeys などのすべての共通 MAXScript キー関数は Biped キーと併用できます。これらのメソッドは、次のメソッドで代用されます。
メソッド
biped.addNewKey <biped_controller> <time> [#select]
ここで、
<time>
指定された時間のコントローラ トラックに新規キーを追加します。
[#select]
#select オプション引数が指定されると、新規キーも選択されます。
新規キーの値は、指定された時間に補間されたコントローラ値です。新規キーの値は、その時間に補間されたコントローラ値です。#select オプション引数が指定されると、新規キーも選択されます。
addNewKey() は、指定された時間に既にキーが存在する場合には、キーを追加しません。戻り値は、指定された時間に位置するキーです。
メソッド
biped.deleteKeys <biped_controller> [#allKeys] [#selection]
ここで、
[#allKeys]
すべてのコントローラのキーを削除します。他の引数が指定されていない場合の既定値です。
[#selection]
選択したキーを削除します。
コントローラから、すべてのキーまたは選択されたすべてのキーを削除します。#allKeys も #selection も指定されていない場合、すべてのキーが削除されます。
Biped コントローラの .keys プロパティの中にインデックスを付けることにより、Biped コントローラ キーにアクセスすると、MAXScript が認識しないタイプのキーが返されます。 インデックスを付けて Biped コントローラ キーを取得すると、次のメソッドが使用されます。
メソッド
biped.getKey ( <biped_controller> | <footstep_ctrl> ) <index>
ここで、
<biped_controller>
Biped オブジェクト コントローラ
<footstep_ctrl>
Biped 足跡コントローラ
<index>
コントローラから取得するキー
Biped の本体コントローラに対しては BipedKey のインスタンスが、足跡コントローラに対しては BipedFSKey のインスタンスが返されます。BipedKey および BipedFSKey は、以下のように定義されます。
すべての Biped 要素に、独自の変換コントローラが含まれるわけではありません。一般に、上位階層のオブジェクトのコントローラに、要素の変換キーが格納されます。たとえば、手の指すべての変換は、Finger0 または Clavicle 変換コントローラ内に格納されます。これは、"Separate Tracks for Arms" が true または false のどちらに設定されるかによって異なります。
次の例は、$Bip01 Vertical_Horizontail_Turn 変換コントローラの各サブコントローラの最初のキーを取得して、そのプロパティを表示します。
例
bipObj = biped.createNew 100 100 [0,0,0] -- select bipObj bip = bipObj.transform.controller -- Obtain the subcontrollers vertCont = bip.vertical.controller horzCont = bip.horizontal.controller turnCont = bip.turning.controller -- Add some keys biped.addNewKey vertCont 1 biped.addNewKey horzCont 1 biped.addNewKey turnCont 1 -- Get the first key for each subcontroller vk = biped.getKey vertCont 1 hk = biped.getKey horzCont 1 tk = biped.getKey turnCont 1 -- Show the properties for the individual subcontroller key types showProperties vk showProperties hk showProperties tk