第六回(12月14日)メモ

★Mayaのアニメーションクリップ機能を使い、アニメーションの合成をする。
 ・セットアップ済みのサンプルキャラクターモデルとアンプルアニメーションを準備。
 ・Mayaでクリップ化し、複数のアニメーションを一つにする。

アニメーションの合成をした後、アニメーションの修正が出来るようにする。
・クリップからボーンへアニメーションを焼き付ける。

★HIKにアニメーションデータを入れて、HIKでアニメーションを修正出来るようにする。
・HIKの設定。
・アニメーションデータの流し込み。

キャラクターデータをダウンロードする

※今回、サンプルデータは下記(アドビ)サイトのデータをダウンロードして、皆さんに触ってもらいました。

※もしも自宅でやる場合など、ダウンロード方法は下記を参考にして頂ければと思います。

Mixamo

1、mixamoでアカウント登録(無料)を行う。
※ご自分のメールアドレスが必要です。
※登録の際はくれぐれも自己責任で行って下さい。

2、キャラクターを選択し、Tポーズデータをダウンロードする。

3、アニメーションタブを開き、アニメーションをどれか選んでダウンロードする。
 ※複数のアニメーションデータをFBX形式でダウンロードする。

サンプルデータのダウンロードは以上です。

※ここから下は、Mayaでのアニメーション合成(クリップ機能など)の説明になります。


◆Mayaで複数アニメーションの合成。

・アニメーションの合成には色々なやり方がありますが、今回の講義では「アニメーションクリップ」を紹介しました。

※「アニメーションクリップ」はアニメーション合成の代表的な機能です。)

1、ダウンロードしたアニメーションデータ(FBXデータ)をMayaで開きます。


そして、クリップ化したい骨を選択します。(今回は全部の骨を選択しました)

※全選択の方法は、「ハイパーグラフ」などでトップノードを選択→Maya上部のメニューの「選択」→「階層」です。


そして、下の図のように進めていきます。


そのクリップを一旦、書き出し保存しておきます。

もう一つのモーションデータも同じように、普通に開いてクリップ化して、書き出し保存します。

クリップ化の手順は以上です。
次に、保存したクリップを読み込んで合成の作業をします。

2、クリップを読み込んで合成させる。

・まずは、キャラクターデータ(Tポーズデータ)をMayaで普通に開きます。
そして、ボーンを全て選択し、とりあえず上記と同じようにクリップ化しておきます。

Tポーズはそのまま出しておきます。
そしてクリップを選択します。

※もしもクリップが表示されない場合は、下記の図の小さい人型「アイコン」をクリックして、「選択したキャラの自動ロード」にチェックを入れておくとクリップが表示できるかと思います。


クリップを選択し、下記の図のように他のクリップを読み込みます。


下の図は、Tポーズのクリップと、読み込んだクリップを並べた状態の図です。
※ちなみにクリップの上部に総フレーム数が書いてあります。

クリップの総フレーム数に合わせて、Mayaの下部にあるタイムスライダー(タイムレンジ)のフレーム数も合わせると良いと思います。


あと、クリップの上下に数値が書いてあります。
上の数値はそのクリップのオリジナルの数値(フレーム数)です。
 →アニメーションの最初や最後をカットする場合に数値を変更します。

下の数値は現時点でのクリップのスタートとエンドの位置を示しています。
→アニメーションのスピードを遅くしたり早くしたりするときに使います。
→また、キーボードの「shift」を押しながらマウスでこの数値をドラッグすると繰り返しの設定になります。


クリップの横(Traxエディタ)の左端にはクリップをロックしたり無効にしたりするボタンがあります。

3、クリップを複数読み込んだら、重ね合わせたりしてキャラクターの本体がどういう動きになるか確認します。2つのクリップを重ね合わせる場合は「ブレンド」を行うと、まあまあ滑らかに二つが繋がります。また、「クリップの分割」で一つのクリップを分割する事も出来ます。

4、クリップのアニメーションデータを骨に戻す処理をして、アニメーションを修正出来るようにします。

・骨に戻す処理はベイク処理というのを行います。

骨のトップノードを階層選択(全選択)し→シミュレーションのベイク処理。

その後、クリップはいらないので、クリップを選択しデリートします。
さらに、キャラクターアイコンも削除します。

その後、一応、動きが誤って消えてないか確認(ベイク前と同じ動きのままか確認)しておきます。

Mayaのクリップについては以上です。

ここから下はHIKの説明になります。少し複雑なので、無理に理解しなくても大丈夫です。とりあえずこのような機能や、やり方もあると言う事だけ知ってもらえればと思います。


◆HIKの設定

・Mayaでベイク処理したアニメーションデータ(または普通のモーションデータも含め)を修正・調整する場合にほとんどの場合はリグ(コントロールリグ)を利用します。

人型のCGの場合、MayaのHIKというリグを使うと便利です。
リグ作成の際も半自動なので初心者の方には助かる機能だと思います。
使用方法が多少複雑なので慣れが必要ですが、時間があれば覚えておくと良いかと思います。

今回の講義ではざっくりと設定方法を説明しました。以下に方法を記載しましたのでご参照頂ければと思います。

1、今回はこのキャラクターデータを使いました。(ジョイントとスキンウェイト設定済みデータ)

2、ヒューマンIK(HIK)の設定画面を出します。

3、「グループノード」をジョイントのトップノードに作成して、「コントロールリグの作成」→「定義」を押します。

※グループノードは足元の中心に作成します(移動値0.0.0、回転値0.0.0の位置に作成します)

4、「ジョイントの名前」と「ミラー一致」のボタン。

これから定義付け作業を行うのですが、前準備として、ジョイントの名前は左右で同じ名前にし、左は「Left」、右は「Right」を名前の先頭に付け加えておきます。

そうする事で、左右のどちらかを定義付けすれば自動でもう片方も定義付けされるので便利です。

HIK画面の「ミラー一致」のボタンをONの状態にしておくと、上記の機能が有効になります。(多分、デフォルトでONの状態だと思います)

5、HIKとジョイントの関連付け。(定義付けの作業)

・HIKの定義付けを行っていきます。
下の図の絵(骨の絵)をダブルクリックし、その後、それに関連付けしたいオブジェクト(ジョイント)をクリックします。

下の図を参考に順番に定義付けして頂ければと思います。
※ジョイントの名前も参考にして頂ければと思います。
(Hips、Spine、Spine1、Spine2、Neck、Head …など)

※あと、下記のサンプルではジョイントの名前が「mixamorig:***」という風に「mixamorig:」が最初の部分についています。これはたまたまサンプルに付いていた名前なので、特に気にしなくて大丈夫です。(「mixamorig:」の文字列は無くて良いです。)

・「ハイパーグラフ」のジョイントではなく、「ビュー」の方のジョイントをクリックしても定義付け出来ます。

・スパイン(Spine)の骨の絵は、下の図の所(▼マーク)に隠れています。

・スパイン(Spine)が複数ある時は、面倒ですがひとつひとつ、定義付けしていきます。

・腕や足など、左右がある場合は片方を定義すると自動的にもう片方も定義してくれます。

・何かの間違いで、黄色になってしまう場合があります。(通常は緑色)
その場合は、その黄色になっている部分を右クリックして、クリア(clear)を押して、その部分をやり直してください。

※あえてそのままやる場合もありますが(左右でジョイントが違う場合など)、通常は何かの間違いの可能性が高いです。

・間違いをクリアしたら引き続き他のジョイントをどんどん定義していきます。

・指はやってもやらなくても良いですが、せっかくなので(サンプルに指があるので)どんどん定義していこうと思います。

・一応、つま先もあります。

・一通り定義付け終わったら鍵マークをクリックして「ロック」します。

この時、正常に定義が進められていたら、右上のチェックマークが緑色になっていると思います。

赤色とか黄色になっていたら、どこかが間違っている可能性があります。

そのままHIKが作れる場合もありますが、大体はエラーのようなものが出て作れないかと思います。

原因はいろいろあるのでここでは詳しい説明できませんが、名前が左右で違っていたり、クリックしたジョイントが間違っていたりなどが多いかと思います。

・ロックした後は、ソースの部分を「コントロールリグ」にします。
そうするとHIKリグが完成します。

以上でHIKの設定は完了です。

・HIKでアニメーションを行う際は、HIK画面に表示されている人型の各部分をクリックして、キャラクターを操作します。

・とりあえず、最初は0フレーム目でポーズを作り(Tポーズでも可)、HIKのコントローラーすべてにキー(sキー)を打ってしまった方が良いです。その後、ポーズを修正したりアニメーションをしたり色々やってみて下さい。

あと、以前お伝えした「オートキー」も「オン」の状態にしておくことをお勧めします。

HIKの説明は以上です。

HIKは高機能ですが、使いこなすためにはMayaのヘルプを確認しつつ、何時間も扱いながら慣れていく必要があります。ここでは詳細な使い方は説明できませんが、世界的に使っている人は多いはずですので、YouTubeなどで使い方を見ながらアニメーションを作って頂けたらと思います。

また、最近ではGoogleやマイクロソフトのAIなどでも使い方を教えてくれるので、そういうのも参考にして頂ければと思います。


◆HIK付きのキャラクターデータに、アニメーションデータを流し込む
※ここからは、HIK設定済みのキャラクターに、アニメーションデータを流し込む作業になります。

・HIKにアニメーションデータを流し込むパターンとして、ざっくり2パターンあるかと思います。

○パターン1→HIKキャラデータとアニメーションデータが、同じボーン構成(ジョイントの長さや階層構造など)の場合。
○パターン2→HIKキャラデータとアニメーションデータで、ボーン構成が違う場合。

今回は、パターン1の方を講義で説明しました。(ボーン構成が同じパターン)

1、最初にTポーズのキャラクターとアニメーションデータのダウンロードを行います。
方法はこのページの最初の方で説明したので、それを参考にして頂ければと思います。

2、TポーズのキャラクターをMayaで開き、HIKの設定を行います。
この方法もこのサイトで説明してありますので、参考にして頂ければと思います。

3、HIKウィンドウでソースを「なし」にします。

4、アニメーションデータを読み込みます。
※読み込み時の設定は下記を参考にして下さい。

5、「コントロールリグへのベイク処理」を行います。
※一応、Maya画面下にある「タイムスライダー(タイムレンジ)」の尺が、アニメーションの尺と同じか確認してください。

6、ベイク処理が完了したらOKです。

他のアニメーションを流し込みたい場合も、同じようにすれば、新しくアニメーションが流し込まれます。

後は、HIK(リグ)でアニメーションを修正出来ます。

また、必要に応じて、クリップで調整したり、後で説明予定のアニメーションレイヤーで調整したりしてアニメーションを完成させます。

★なお、今回は説明しませんでしたが、HIKの「リターゲット」機能を使えば、体格が違うキャラクターのアニメーションを使いまわす事も出来ます。上記のやり方とは違ってもう少し手順が複雑になります。もし機会がありましたら説明したいと思います。

アニメションの流し込みは以上です。

★FBXデータ Tポーズ
・T_Van.fbx

★FBXデータ アニメーション
・Fight01.fbx
・Run01.fbx
・Walk01.fbx
・Walk02.fbx
・Basic Shooter Pack


★Mayaデータ
・test_clip.mb
(クリップ読み込み済み)

・test_HIK.mb
(HIK設定済み)

★Maya個別クリップデータ
・clip01.mb
・clip02.mb

★AIモデリング
・PPP00.jpg
(ペイントソフトデータ)

・PPP00.fbx
(AIモデリングデータ)

・PPP01_T.fbx
(セットアップ Tポーズ済み)

・PPP02_HIK.mb
(HIK済みデータ)

・PPP03_anim.fbx
(アニメデータ)

以上です。