AutomatonRigのモーションセーブ

 ATSaveHmot.lsはAutomatonRigのモーションを.hmot形式でセーブする為のLScriptです。このツールで作成したhmotファイルはDStorm製のプラグイン「MapMotion2.p」を使って直接キャラクタにモーションを割り付けることが出来ます。ATSaveHmotではコントローラNULLのモーションも同時に保存している為、骨格とRigの種別が同じであればモーションを正確に再現すること出来ます。FK情報は焼きこまれたものではなく生のデータを保存します。

 

履歴

2003/12/20   MapMotion2複数キャラクタ対応に伴うドキュメントの修正。

2003/11/15 1.1 読み込み、書き込み処理の最適化。読み込み、書き込みディレクトリは以下の優先度で指定する。
             1)前回のディレクトリ   
             2)シーンディレクトリ
             3)ContentDirectory
           ATSaveHmot  ファイル拡張子(hmot)の付加。拡張子は強制的にhmotに指定される。
2003/10/30 1.0公開 
         ATSaveHmot バグ修正、R/L_FtRot、R/L_FtTipGoalの回転がセーブされない問題に対処。
2003/10/22 Acs3bに対応。ただし、Acs3b<->Automatonモーション変換はサポートせず。
2003/10/16 α版 登録


使用方法

3)OKを押すとモーションファイル(hmot)が生成されます。生成されるhmotファイルのStartRangeとEndRengeはFrameStartとFrameEndと同じになります。

 

作成されたモーションファイル(hmot)はMotionMixerで読み込むか、プラグイン「MapMotion2.p」を使用してキャラクタにモーションを割り当ててください。

ちなみに「MapMotion2」はここで手に入ります。

 http://www.dstorm.co.jp の 「無償プラグイン」->「Motion」->「MapMotion2」

 http://www.dstorm.co.jp/dslib/motion.html (直接)

 

異なるタイプのRig間でモーションをロードする場合

●IK/FKモデルとFKモデルではRigが異なる為、正確なモーションの受け渡しが出来ません。しかし、MapMotion2のマッピング機能を使えば異なったRigのモーションを適応することが可能になります。マッピングファイルを付属ファイルとして添付していますのでご利用ください。

 map_motion2/mop_motion2_IK_toFKIK.txt   IKモデルで作成されたモーションをIK/FKモデルにロードします。

 map_motion2/mop_motion2_IKFK_toIK.txt   IK/FKモデルで作成されたモーションをIKモデルにロードします。

 

 MapMotion2実行時に上記のファイルを読み込んでください。

●FKモデルにIKモデル又はIK/FKモデルのデータを読み込む場合は必要に応じてIK->FK変換を実行してから書き込み及び読み込みを行なってください。

 

複数キャラクタにモーションを読み込む(2003/12/14)

 DStormさまのご協力により複数キャラクタ上でもモーションファイルが読み込めるようになりました。ここでは複数キャラクタにモーションを適応する方法や注意点を述べて生きます。

単一キャラクタと複数キャラクタの場合の大きな違いは名前が重なっているということです。従ってこの名前をマッピングし直してやる必要があります。

複数キャラクタにモーションを適応する場合は以下の手順で行なってください。

1)MapMotion2スクリプトを実行する。

2)Loadボタンでマップするファイルを選択する。「 Automaton\map_motion2\複数キャラクタ読み込み」階層に0〜5までのマッピングファイルがあります。適切なものを選択してください。また5体以上の場合はマッピングファイルを参考にテキストエディタなどでマップファイルを修正してください。

3)これでItemのマップが出来ました。次はBoneのマッピングです。以下のボタンからマッピングするModelを選択してください。

4)OKを押すとモーションがItemに適応されます。

体格の異なるキャラクタにモーションを適応する。(2003/12/14)

 体格の異なるキャラクタに付けたモーションを他のキャラクタに適応する場合、手が伸びたり、足が短くなります。これは出力されるhmotファイル内に骨の長さ情報が含まれてしまっているためです。

 この場合は図のように骨のPosition、Scaling情報を読み込まないようにします。Root以外のすべて骨にRot情報のみにマップしてください。

 

 サンプルマップファイルはAutomaton\map_motion2\別キャラへの読み込み.txtです。

 

 注意!)体格が異なるキャラクタにモーションを適応する場合は原則的にFKを使用してください。これはIKのコントローラ位置を腕や足の長さを考慮して再計算しなくてはならない為です。IKを使用したい場合は一旦FKで読み込んで、ATFKtoIKによってIKコントローラの位置を更新する必要があります。

特記事項

  1. 正確なモーションを再生する為には同じ種類のRig間のhmotファイルを使用してください。また、同じ種類のRigでも骨の長さが違うと再生されるモーションは異なります。
  2. IK/FKモデルからFKモデルにモーションを移動する場合は付属されているマップファイルmap_motion2_IKFK_to_FK.txtを使用してモーションのマッピングを行なってください。
  3. ShapeモーションとIK/FKCntrolモーションはセーブされません。
  4. キーフレームのベジェ補完を使用しているモーションデータはセーブ出来ません。これはLScript上の制限の為です。
  5. このツールで作成したhmotファイルをMotionMixerで読み込む際にはMapが必須になります。これは非常に手間のかかる作業です。MotionMixerを使用する場合は、サンプルMotionMixerの様に一旦Rigにあわせたhmotに変換してからブレンドすることをお勧めします。

免責事項 その他

  本ソフトウェアおよび書類を使用したことまたは使用できなかったことから生じる、 直接損害、間接損害 につき一切の責任を負いかねますので 予め了承ください。 要望やバグがある場合は以下のアドレスまでメールしてください。

  Copyright Noboru Fujiyama 2003/05/27
  e-mail : noboyama@yk.rim.or.jp
  homepage : http://www.yk.rim.or.jp/~noboyama/

 

戻る