リターゲティング

リターゲッティングは、アイテムのある階層から別の階層にモーションを転送するプロセスです。通常、これはキャラクターの歩行または実行サイクルであり、別のキャラクターで再利用され、オリジナルとは比率が異なる場合があります。モーションは、シーン内の既存のキーフレームアニメーションから発生させることも、アニメーションFBXファイルやBVHモーションキャプチャ形式のインポートなどでインポートしたモーションにすることもできます。リターゲティングのコマンドとツールは、 RetargetingのセクションActors & SetsのツールボックスにあるツールバーSetupインターフェイスのレイアウト。

リターゲティングの準備

Retargeting

ソーススケルトン

ソーススケルトンは、リターゲット(アニメーションを含むジョイント)のモーションソースです。にいる間Setupモードでは、このスケルトンをデフォルトのTポーズ(下図)に設定し、その回転をすべて0 (ゼロ)。Tポーズはモーションキャプチャデータで一般的に使用されますが、一部のファイルでは腕が垂直に設定されている場合があります。見るモーションのインポート詳細については。

Image 1

ターゲットスケルトン

モーションデータが読み込まれるスケルトンは、単一の連続したアイテムの階層である必要があります。モーションは、接続されていない個々のアイテムにリターゲットすることはできません。このスケルトンも標準のTポーズでなければなりません。ただし、腕と脚はしばしば変形とIKソルバを支援するために部分的に曲げられているため、 Modoリターゲットされたモーションを適用するときにこれを補正します。他のすべての関節は、静止した方向にある必要があります。スケルトンは、ルートがX軸とZ軸の原点を中心にしてZ +軸にも面している必要があります。ただし、Y軸上でオフセットして配置される場合があります。

Image2

ターゲットスケルトンのタグ付け

助けるためにModoリターゲットプロセス中にターゲットスケルトンの特定のジョイントを識別するには、標準のスキームに従ってモーションキャプチャの場合と同様に、共通の名前を割り当てる必要があります。Modoを使用しますCharacter Studio Bipedこれは、自由に入手できるモーションキャプチャファイルの大多数に見られるため、命名規則(以下に示す)です。Note:このステップはオプションですが、モーションをスケルトンにリターゲットするのにかかる時間を大幅に短縮します。この命名構造により、 Modoさまざまなサイズのスケルトンに適応するようにモーションをスケーリングするなど、さまざまなタスクを自動的に実行します。

image4

ジョイントに名前を割り当てるには、ターゲットアイテムを選択し、適切な定義済みの名前をRetargetingのセクションActors & Setsツールバー( Nameメニュー)。アイテムを選択すると、メニューが更新され、現在割り当てられている名前が表示されます。アイテムからタグを削除するには、 (none)メニューの上からオプション。

iamge 5

ターゲットアクターの定義

リターゲットでは、アクター、アクション、ポーズ機能を使用して、ターゲットジョイントを識別します。この機能に慣れていない場合は、 アクター、アクション、ポーズの作成トピック。階層をアクターとして割り当てるには、ターゲットスケルトン(通常はヒップ)のルートアイテムをダブルクリックして階層全体を選択し、次にActor > NewからのオプションActors & Sets作成を開くツールバーNew Actorダイアログ。確認してくださいFrom Selected ItemsオプションはModeそして、スケルトンの名前(たとえば、 'SimpleGuy_Retarget')を入力し、 OK Actorグループを作成します。

image7

モーションのインポート

BVH形式のモーション

.bvhフォーマットは、彼らが顧客にモーションを配信するための手段として、Biovisionという名前を付けた現在は使用されていないモーションキャプチャ会社によって開発されました。このフォーマットは、シンプルさと実装の容易さから、業界標準になりました。各Biovision(*.bvh)モーションキャプチャファイルには、スケルトンの定義と実際のモーションデータが含まれています。ファイル内のスケルトン定義は、 Modo初期モーションデータを適用するため。ただし、それが完了すると、さらに.bvh同じスケルトン階層を使用するファイルは、同じアクタに追加のアクション状態としてロードできます。

をロードするには.bvhファイル、選択Create from BVHのオプションActors > NewのツールメニューActors & Setsツールバー(下に表示)。これにより、OS固有のファイルリクエスターが開き、目的の場所に移動します.bvhファイルしてクリックOpenファイルをロードします。ロードされると、 Modoの定義からスケルトンを自動的に構築します.bvhファイル、スケルトンアイテムを含むアクターを作成し、モーションキャプチャデータを含むアクションを作成します。結果のアクターにはデフォルトで「ActorBVH」という名前が付けられ、モーションを含むアクションにはインポートされたファイル(「Run.bvh」など)によって名前が付けられます。

image

さまざまなサイズの問題を軽減するために、生成されたスケルトンは、インポートされたモーションに合わせて適切に調整され、高さ2m(約6フィート)に自動的にスケーリングされます。また、セットアップポーズを原点に中央揃えし(必要な場合)、ルートをY +方向に上向きに配置して、足を地面に置きます。インポートされたモーションを含む新しいアクションがアクティブになり、アニメーションを3Dビューポートでプレビューできるようになります。

追加がある場合.bvh同じスケルトンを使用するファイルは、そのモーションを追加のアクションとして同じアクターにロードできます。選ぶImport from BVHからActions > Newツールメニュー。これにより、OS固有のファイルリクエスターが開き、目的の場所に移動します.bvhファイルしてクリックOpenファイルをロードします。ロードされると、新しいアクションが.bvhファイル。すべてのモーションが同じスケルトンを使用している限り、追加のモーションをいくつでもこの方法でロードできます。さまざまなモーションの切り替えは、ポップアップメニューの利用可能な選択肢から目的の「アクション」を選択することにより、通常の方法で行われます。

img

FBX形式ファイル

.fbx formatは、アプリケーション間でジオメトリ、アニメーション、その他のデータを転送するためのシーンデータ交換フォーマットです。アニメーションデータを含むスケルトンを含むファイルをロードして、他のキャラクターにリターゲットできます。の.fbxファイルは最初にFile > Import...コマンド、ファイルのコンテンツを現在のシーンにロードします。これにより、モーション情報が適用されたスケルトンが作成されます。

リターゲティングの場合、このスケルトンは、説明されているのと同じ方法を使用して、スケルトン全体のアクターとして割り当てる必要があります。 。また、スケルトンはデフォルトのTポーズでなければなりません。 Setupモード。そうでない場合、回転するまですべてのジョイントを回転させる必要があります。これが完了したら、スケルトンのモーションをアクションに転送する必要があります。これを行うには、まず終了することを確認してくださいSetupモードを使用して、新しいアクションを作成します。 Newボタン。

img

これにより、 New Actionダイアログボックス。アクションに適切な名前を付け、 Transferオプションを有効にして、アニメーションをシーンからアクションに移動します。

img

スケルトンなしでFBXモーションデータをロードする方法はないため、同じアクタに複数のモーションをロードするプロセスは、 .bvhファイル。以下の手順は、それぞれについて従う必要があります.fbxファイル。

1.   インポート.fbxファイル。スケルトンの新しいアクターを作成します。
2.   新しいアクションを作成し、上記のようにアニメーションを転送します。
3.   それが完了したら、モーションをターゲットアクターにコピーして、ポップアップメニューで選択することにより、元のアクターをカレントにします。
4.   次に、 Import from ActionからのコマンドNewアクションツールメニュー。

img

表示されるダイアログで、次のことを確認しますActorとして設定されていますSource。次に、ロードされたばかりのモーションを含む目的のアクターを選択し、 Source Action乗り換え。結果のアクションの名前をNew Action Nameフィールド(空白のままにすると、デフォルトでソースアクションの名前になります)。

img

クリックOKアクションを現在のアクターにコピーします。このシーケンスは、FBXモーションごとに繰り返すことができます。すべてのモーションが転送されたら、(現在は不要な)ソーススケルトンを削除できます。

リターゲティング

リターゲットツール

ソーススケルトンとターゲットスケルトンが正しく設定されたので、実際のリターゲットの時間です。これはSetup対話型ツールを使用したモード。

注意:  スケルトンのサイズと比率はさまざまです。

ツールをアクティブにするには、最初にソーススケルトンのルートジョイントを選択し、次にターゲットスケルトンのルートジョイントを(この順序で)選択します。次に、 Retargeting Toolボタン。それはで見つけることができますRetargetingのセクションSetupレイアウトツールボックス( Actors and Setsサブタブ。デフォルトで最小化されている場合もあります)。Modoそのを使用します全身IKリターゲットを解決するために、リターゲットツールは最初にターゲットスケルトンにIKが割り当てられているかどうかをチェックし、必要に応じてそれを追加すると、次のダイアログが表示されます。

次に、リターゲットツールがリターゲットマップファイルを要求します。これらのファイルには、スケルトンのペアのリターゲット情報が保存されているため、リターゲットを自動的に適用できます。これらのスケルトンが初めてマッピングされた場合は、 No次のステップに進みます。スケルトンが以前にマップされていて、マッピングファイルが保存されている場合(を参照) マッピングファイル)次に[はい]を選択してファイルリクエスタを開きます。マッピングファイルを選択して、 OK。その後、すべてのリターゲットが適用され、3Dビューポートですぐにキャラクターのモーションを確認できます。

img

リターゲットツールは、3Dビューにハンドルを描画します。ソーススケルトンは、接続をより明確にするために一時的に戻され、ツールを無効にすると復元されます。マッピングファイルが選択されていない場合、ツールはスケルトンを調べ、セットアップフェーズで定義されたジョイント名を使用して、可能な限り多くの接続を自動的に作成し、一致するジョイントを識別します。ルート項目は3Dビューでアクセスするのが面倒なので、ツールはこれらを自動的にマッピングし、位置ピン(以下で説明します)。

このツールは、色分けされた接続ハンドル(塗りつぶされた円として描画)を使用して、新しいリンクを作成し、既存の接続に関するフィードバックを提供します。

Blue:ソーススケルトンのマッピングされていないジョイント

Red:ターゲットスケルトンのマッピングされていないジョイント

Green:マップされたジョイント

リターゲットリンクは、マップされたジョイント間に点線で描画されます。ターゲットスケルトンのマップされたジョイントのワイヤフレームカラーが緑に変わり、現在、リターゲットツールがオフの場合でも、ジョイントがリターゲットによって駆動されていることが示されます。リターゲティングがスケルトンから削除されると、ジョイントの元の色が復元されます。青色のソース接続ハンドルをクリックして赤色のターゲットハンドルにドラッグすると、新しいリンクが追加されます。リンクはCtrl+ソースまたはターゲットの接続ハンドルをクリックします。

Adding a new link.

img

The skeleton fully mapped.

位置ピン

上記のリターゲットリンクは、ソースジョイントの回転をターゲットジョイントの回転にマッピングします。並進マッピング(実際の動き)は、位置ピンを使用して実現されます。これらは、ソースジョイントの位置を取得し、スケーリングして、ターゲットジョイントの位置に適用します。スケーリングは、ソースと比較したターゲットスケルトンの比率とサイズの違いに基づいています。ほとんどの場合、位置ピンはターゲットスケルトンのルートに適用する必要があるため、リターゲットツールがアクティブになると自動的に追加されます。

位置ピンがジョイントに割り当てられると、緑色の円形ハンドルが緑色の四角形に変わります。位置ピンはトグルとして有効になり、ソースまたはターゲットのハンドルを右クリックしてオンとオフを切り替えます。次の方法で位置ピンを削除できますCtrl+それをクリックします。

img

異なるスケールのスケルトンをリンクするときに適用される自動スケーリングは、足のスライドを減らすのに役立ちます。ポジションピンをキャラクタの足に追加すると、結果をさらに向上させることができます。これらのピンは、必要に応じて、スケルトンの他の部分にも適用できます。たとえば、逆立ちなどでモーションがキャラクターの手が地面に乗っている場合、手首に位置ピンを適用して手首を固定することができます。

注意:  リターゲティングタグがターゲットスケルトンに割り当てられていない場合、自動スケーリングを適用できず、手動で設定および調整する必要があります。の全身IK設定Position Task属性にはScaleこの目的で使用できるチャネル。これは、リターゲティングタグから計算される自動スケールを(必要に応じて)調整する場合にも役立ちます。

img

リンクを手動で追加および削除する

一部のジョイントは、リターゲットツールでアクセスするのが面倒な場合があります。これは、他の関節に非常に近いか、同じ位置にある可能性があるためです。これらの場合、リンクは手動でAdd LinkそしてRemove Link下にあるボタンRetargeting Tool。これらは、ツールをオンまたはオフにして使用できます。リンクを追加するには、ソースジョイントを選択してからターゲットジョイントを選択し、 Add Linkボタン。リンクを削除するには、ターゲットジョイントを選択して、 Remove Linkボタン。

img

モーションのプレビュー

すべてのリターゲットリンクが割り当てられたら、終了しますSetupモードでは、キャラクターに適用されているリターゲットされたモーションをプレビューできます。コネクタのドットは、マッピングを明確にするために描かれています。あなたは出入りできますSetupリターゲットの編集中に、リターゲットツールが必要な回数だけアクティブになっているときのモード。

ソースアクターに複数のアクションがある場合、それらを切り替えて、キャラクターに適用された各モーションを確認することができます。

マッピングファイル

マッピングファイルには、スケルトンペアのリターゲット情報が保存され、必要に応じてリターゲットを自動的に再適用できます。リターゲットが完了したら、ターゲットスケルトンからリターゲットが削除された後で将来さらにモーションを適用する必要がある場合に備えて、スケルトンのマッピングファイルを保存することをお勧めします。

img

ターゲットスケルトンのアクターがアクターポップアップメニューで選択され、リターゲットがスケルトンジョイントに適用されている場合、マッピングファイルはいつでも保存できます。Retargetingツールをアクティブにすると、マッピングファイルがロードされ、リクエスタが表示され、ロードする必要があるかどうか尋ねられます。

注意:  ファイル内のアイテムは名前で識別されるため、他のアイテムが最小限のシーンでリターゲットを実行するのが最善です。

リターゲティングの削除

リターゲティングは、スケルトンから削除できます。 Remove Retargetingツールバーのボタン。これはで実行する必要がありますSetupターゲットスケルトンが選択されたモード。

img

ボタンをクリックして削除を開始し、警告の確認ダイアログボックスを開きます。クリックYesリターゲットリンク、ポジションピン、タスクをスケルトンから削除し、ジョイントを設定と元の色に戻します。フルボディIKは現在削除されていません。

アニメーションを焼く

ベイク処理は、スケルトンの各ジョイントに対して、モーションの実際のキーフレームを(フレームごとに)生成することにより、ターゲットスケルトンのジョイントにリターゲットを適用します。ベイク処理が完了すると、リターゲットを削除してキーフレームを手動で編集できるようになります。たとえば、モーションを調整したり、モーションキャプチャデータにあるジッターをクリーンアップしたりできます。ベーキングは、ターゲットスケルトンのルート要素を選択し、 Bake Retargetingツールボックスのボタン。

このアクションにより、 Bake RetargetingダイアログパネルStartそしてEndフレームが定義されています。

img

ベイク処理は、すべてのフレームのキーフレームを、ターゲットスケルトンの現在アクティブなアクション、またはアクティブでない場合はシーンアクションに書き込みます。クリックOKベーキングを開始する前に警告ダイアログを開きます。

img

アクションの上書きを避けるための最も簡単なオプションは、ターゲットアクターをベイクする前に、現在アクションが選択されていないことを確認することです。ベイクされたモーションで問題がなければ、後で新しいアクションを作成できます。クリックOK警告ダイアログのには、リターゲティングにベイクが適用されているときの進行状況バーが表示されます。ベイク処理が完了すると、ターゲットスケルトンからリターゲットを削除するかどうかを尋ねるダイアログが表示されます。選択するYes単一のモーションがターゲットスケルトンにベイク処理されている場合、またはNoベイクする必要のあるソーススケルトンにさらにモーションがある場合。リターゲットを削除すると、すべてのリターゲットリンク、位置ピンが削除され、ターゲットジョイントの元の設定と色が復元されます。また、必要に応じてリターゲティングツールを無効にします。

ベイク処理が完了すると、ベイク処理されたモーションに新しいアクションを作成できます。ターゲットスケルトンのアクターを選択して、 New...の中にActionsツールバーのセクション。ダイアログに新しいアクションの名前を入力し、 Transferオプションをオンにして、モーションをシーンアクションから新しいアクションにコピーします。

複数のモーションをベイクする

ソースアクターに複数のモーションがある場合、リターゲットを削除する前にこれらすべてを一緒にベイクできます。ソースアクターからベイクするアクションを選択します。ターゲットスケルトンのルートを選択し、ターゲットアクターのアクティブなアクションがないことを確認します。クリックしてくださいBake Retargetingボタン。ダイアログでプロンプトが表示されたら、リターゲティングを削除する必要があるかどうかを選択しますNo。ターゲットアクターの新しいアクションを作成し、ベイクモーションをシーンアクションから転送します(前に概説したように)。ソースアクターに属するモーションごとにこれらの手順を繰り返します。すべてのモーションがベイク処理されると、リターゲットをソーススケルトンから削除でき、ターゲットアクターのモーションごとに個別のアクションがあります。