USD Importer は コントロール リグ を使用して、開いている USD Stage からスケルタル アニメーションをベイクおよび直接操作できます。そして、USD ファイルにあるアニメーションへの変更内容を保存および維持できます。このガイドでは、そのワークフローについて順に説明し、いくつかのコンフィギュレーション オプションのリファレンスを提示します。
概要
USD Stage ウィンドウにある SkelRoot プリミティブにコントロール リグをバインドすると、USD Importer が以下の処理を自動的に行います。
- シーケンサー にコントロール リグ トラックを追加する
- アニメーションを開始から終了まで処理し、アニメーションのフレームごとにコントロール リグにキーフレームを追加する
- スケルタル アニメーション セクションを無効にする
その結果、コントロール リグにはアニメーションの個々のフレームごとに 1 つのキーフレームがあり、それが実質的にアニメーションの制御を担います。すべての変更内容を USD ファイルに保存できるため、セッション間でアニメーション データが維持されます。そうすることで、エンジン内でアニメーションをすばやく編集する必要がある時間がかかる作業が減ります。
このプロセスで自動的に生成されるキーフレームの数を減らす方法については、後述の「キーフレーム数を削減する」を参照してください。
1. 必要な設定
USD Importer を使用するには、[Edit (編集)] > [Plugins (プラグイン)] メニューで USD Importer プラグインを有効にする必要があります。プラグインを有効にした後にエディタを再起動します。
画像をクリックすると拡大表示されます。
このガイドでは、「Third Person (サードパーソン)」テンプレートを使用して作成された新規プロジェクトを使用します。このテンプレートには、Unreal Engine のマネキン モデルと CR_Mannequin_Body コントロール リグが入っています。そのどちらも、コンテンツ ブラウザ の「Content/Mannequins」フォルダにあります。
このガイドは、これらのアセットを使用した例を示しますが、必ずしもここで示している手順に従う必要はありません。スケルタルメッシュ用のコントロール リグをすでに作成している場合は、同じようにしてスケルタルメッシュを使用することもできます。コントロール リグの使用の詳細については、「コントロール リグ」を参照してください。
2. USD ファイルをエクスポートする
USD Stage の機能を利用してコントロール リグを設定するには、編集するアニメーションの USD をエクスポートする必要があります。
-
アニメーション アセットと、そのアセットのスケルタルメッシュに対応するコントロール リグを選択します。この例では、「Third Person」テンプレートにある以下のアセットを使用します。
- アニメーション アセット:Content/Characters/Mannequins/Animations/Manny/MM_Walk_InPlace
- コントロール リグ:Content/Characters/Mannequins/Rigs/CR_Mannequin_Body
-
コンテンツ ブラウザ にある アニメーション を右クリックし、[Asset Actions (アセットアクション)] > [Export (エクスポート)] を選択します。
画像をクリックすると拡大表示されます。
-
エクスポート ダイアログで、ファイル タイプとして [Universal Scene Description file (*.usda)] を選択し、[Save (保存)] をクリックします。
画像をクリックすると拡大表示されます。
-
[USD Export Options (USDエクスポートオプション)] ダイアログで [Export] をクリックします。
3. USD Stage でコントロール リグをセットアップする
次に、アニメーションの USD ファイルを USD Stage Editor で開いて、コントロールリグをセットアップします。
-
[Window (ウィンドウ)] > [Virtual Production (バーチャルプロダクション)] > [USD Stage] をクリックすると、USD Stage エディタが開きます。
-
[USD Stage] ウィンドウで [File (ファイル)] > [Open (開く)] をクリックし、[Open File] ダイアログで、編集するアニメーションの
.usdaファイルを選択して [Open] をクリックします。画像をクリックすると拡大表示されます。
モデルがワークロードの原点に表示されます。
-
[USD Stage] ウィンドウで、スケルトンの ルート を右クリックして [Set Up Control Rig (コントロールリグをセットアップ)] を選択します。
-
ステージ階層の右側に [Integrations (統合)] パネルが表示されます。コントロール リグ アセット をスケルタルメッシュのコントロール リグに設定します。
-
シーケンサーのウィンドウが表示されていない場合は、ワールドの 階層 にある USD Stage Actor をクリックし、[Details (詳細)] パネルにある [Level Sequence (レベルシーケンス)] をダブルクリックします。
-
シーケンサー のトラック リストにある、新しく作成された コントロール リグ トラックをクリックします。
- この例では、コントロール リグの名前は
CR_Mannequin_Bodyです。
画像をクリックすると拡大表示されます。
- この例では、コントロール リグの名前は
結果
そのリグのコントロールが、ワールドにあるメッシュ上に表示されています。これで、シーケンサーとコントロール リグを使用して、既存のアニメーションを編集するか、新規アニメーションをゼロから作成できるようになりました。システムは変更を検出するとそれを USD Stage に書き込み、後でユーザーがそれをディスク上のファイルに保存できます。
コンフィギュレーション
コントロール リグに対して SkelRoot プリミティブをセットアップすると、USD Stage の [Integrations] パネルで以下のオプションとして設定できる、いくつかの属性が提供されます。
フォワード キネマティック コントロール リグ
[Use FKControlRig (FKControlRigを使用)] 設定をオンにすると、選択されているコントロール リグ アセットが無効になり、代わりにボーンごとのコントロールがあるデフォルトのフォワード キネマティック コントロール リグが使用されます。まだコントロール リグがないスケルタルメッシュでそれを使用できます。
キーフレーム数を削減する
自動生成されるキーフレームの数を削減するには、[Integrations] パネルにある [Control Rig key reduction (コントロールリグのキー削減)] 設定をオンにします。そうすると、直前のキーフレームと類似しているキーフレームが除去され、残っているキーフレーム間のアニメーションがシステムによってトゥイーンされます。[Control Rig key reduction tolerance (コントロールリグのキー削減の許容範囲)] 設定を使用して、キーフレーム削減の感度を変更できます。この値が大きいほど、キーフレーム数が積極的に削減されます。
画像をクリックすると拡大表示されます。