【Maya LT】Human IK チュートリアル - No.0 セットアップ
モーション
IKinema Orion などで収録したモーションキャプチャーデータを、
比較的手軽に修正して使うために、
まずはHuman IK について学びましょう。
(この記事で解説に使用しているモデルは、ユニティちゃんを使用しています。)
© Unity Technologies Japan/UCL
-----------------
おはようございます。
自称 積木製作VR開発部の『動』表現担当 中谷です。
弊社では少し前からIKinema Orionを使った簡易モーションキャプチャーを導入して使っています。
最近は同製品の他にもPerception Neuronなどを使い、
安価で手軽にモーキャプできるシステムがあって楽しいです。
世間ではVtuberが盛り上がって来たこともあり、導入を検討している方多いかと思います。
弊社でもVTuberデビューを果たすべく準備をしておりません😉
アニメーションにより生っぽさが欲しいときや、
人物が何かにぶつかって跳ね飛ばされたり、転倒・転落するなど、
他のオブジェクトと干渉して複雑なリアクションを取るアニメーションが必要な時、
都合上アニメーションを外注する際のアタリをサクッと作るのにも非常に役立っています。
ただ、役者がなにぶん運動不足な自分なものですから、収録時に気をつけて演技しないと
姿勢が悪い、メリハリがない、何をしてるのか・何を伝えたいのかわかりにくい
「猫背のおっさんの三文芝居」ばかり出てきて、
とてもじゃないけどキャラクターアニメーションとしては使えないことが多々あります。
(勿論、ちゃんとした役者・アクターさんを起用できると良いのですが…
VTuberのようにリアルタイム性が重要なコンテンツではなく、
通常のキャラクターモーションとして利用するには、
多かれ少なかれモーションの修正が必要です。
このシリーズでは、簡易モーキャプで得られたデータを、
Maya・MayaLTの機能「HumanIK」を利用することによって、
目的のモデルに合わせたポーズ・モーションの修正が出来るようになることを目的とした記事にする予定です。
HumanIKでのアニメーション入門としても役立つかと思います。
連載目次(予定)
No.0 HumanIKのセットアップ
No.1 IKモードの切替について
No.2 補助エフェクターを使って持ち替え、接地のコントロール
No.3 IKinema Orionでのキャプチャーデータを取り込む
No.4 TimelineEditorで複数の演技を1ファイルにまとめる
No.5 アニメーションレイヤーで微調整する
このような予定で紹介して行ければと思います。
※何故先にIKinema Orionで作ったモーションを入れないのか
IKinema Orionで得られるデータには、指や肩、顔やつま先のアニメーションは含まれません。
それらが必要でなければそのままUnityへ入れてしまえば良いのですが、
肩や指が動かないキャラクターは思った以上に硬い動きに見えて違和感があります。
それらを修正するためにはMayaでのアニメーション
及びHumanIKでの操作を把握しておく必要がありますし、
Orionのデータを自作や他のキャラクターへ移す前に気をつけておきたいことが幾つかあるのです。
No.0 HumanIKのセットアップ
Human IK のコントロールリグを利用可能にするため、
キャラクターモデルを読み込んでHuman IK のキャラクタ定義を作成します。
モデルの準備
まずは、Maya・MayaLTのシーンにキャラクターモデルをインポートします。
Human IK ウィンドウを表示する
画面左上の人形のアイコン
もしくはウィンドウ>アニメーションエディタ>Human IK
からHuman IK ウィンドウを開きましょう。
Human IK ウィンドウを開くと、以下のような画面が表示されます。
このウィンドウは、「キャラクタ定義」を編集する画面です。
※表示されていない場合は、「キャラクタ定義を作成」をクリックしてください。
必要なジョイントを登録する
キャラクタ定義に、必要なジョイントを登録していきます。
登録するには、まずキャラクタ定義の画面のジョイントをダブルクリックします。
すると、選択した場所以外が薄くなった状態になります。
この状態で、アウトライナから該当のジョイントをクリックします。
すると、キャラクタ定義のジョイントの色が変わります。
緑色に変わったら正しく登録できた状態です。
Reference(Root)から階層に沿って順番に登録していきましょう。
問題なく全てのジョイントが登録できたら、以下のような画面になります。
コントロールリグを作成
キャラクタ定義が済んだら、「コントロールリグを作成」ボタンを押すことで、
Human Ikが簡易的なリグを作成してくれます。
アウトライナに新たにコントローラとリグ用のジョイントが作成されたら、
セットアップ完了です。
ここまで無事に来られれば、Human IKを利用する準備が整いました。
次の記事をお楽しみに。
トラブルシューティング:Human IK セットアップ編
手順通りにやったのに、「なんか上手く行かない!」となってしまった方、こんばんわ。
以下では、自分が実作業でつまづいた項目を解説していきます。
1:Tポーズでないキャラクター
Aポーズでセットアップされたキャラクターなど、
バインドポーズがTポーズでないキャラクターは、
上腕と掌がエラーになります。
ジョイントを回転させてTポーズにすることでエラーが解消できれば、問題ありません。
2:ジョイントの方向が揃っていない状態でスキンされたキャラクター
Tポーズにしたつもりでもどうやってもエラーが解消されない!
もし、自作のモデルや諸事情あってボーンを付け直したキャラクターを使用している場合は、
ジョイントのローカル軸を確認してください。
もしかして、ジョイント方向が統一されていないのでは・・・?(本当にあった怖い話
こうなってしまっているとどうやってもエラーは解消されません。
スキンを一旦外してジョイントの方向付けをやり直してから、スキンを復元してください。
3:ツイストボーンを持っているキャラクター
腕にツイストボーンを持っている場合、HumanIKのキャラクタ定義に含めることができます。
が、含めないことをオススメします。
セットアップの時にはあまり関係ないのですが、
アニメーションを修正して書き出す際に、
本来入ってはいけない回転軸に値が入っていて、
UnityでインポートしてAnimation TypeをHumanoidに設定して再生すると、
肘と手首の位置がズレて、手が謎の位置に浮いてしまう不具合に遭遇します。
(見せられる画像がなく、スミマセン…)
[…] Human IKの仕込み方は、こちらの記事を参考にしながら↓ 【Maya LT】Human IK チュートリアル – No.0 セットアップMaya・MayaLTのHuman IKの機能を使って, IKinema OrionやPerception […]