アニメーション モンタージュ を初めて使う場合は、まず Animation Montage Overview のページをご覧いただくことをお勧めします。
このページでは、モンタージュ エディタで アニメーション モンタージュ とそのオプションのセットアップ方法を説明します。
モンタージュにアニメーションを追加する
まず、Montage 領域内で、モンタージュを構成する アニメーション シーケンス を追加する必要があります。
これを行うには、[Asset Browser] ウィンドウ内で、アニメーション シーケンスをモンタージュの Slot トラックにドラッグ&ドロップします。
アニメーションをスロット トラックにドロップすると、それが追加されます。
モンタージュに追加するアニメーションをさらにスロット トラックにドラッグ&ドロップすると、順次追加されます。
アニメーションが最初と 2 番目のスロット トラックに自動的に交互に並ぶことで、各アニメーションの開始と終了の位置が区別しやすくなっています。
左クリックして、アニメーションをスロット トラックにドラッグ&ドロップして、並び替えることもできます。
モンタージュ領域でアニメーションを右クリックすると以下のコンテキスト メニューが表示されます。
| メニューオプション | 説明 |
|---|---|
| Delete Segment | 選択したアニメーションを削除します。 |
| Open Asset | 選択したアニメーションを開きます。 |
| New Montage Section | 新規モンタージュ セクションを追加します。 |
| New Slot | 新規スロットを追加します。 |
| Delete Slot | 選択したスロットを削除します。 |
| Duplicate Slot | スロットを複製し、新規スロットを作成します。 |
| Set Elements to... | すべてのモンタージュ エレメント (セクション、通知) を、Absolute、 Relative、または Proportional の値に設定します。 |
モンタージュ セクションを作成する
セクション領域でセクション間の関係性を定義するには、まずモンタージュ領域内で作業するセクションを作成する必要があります。
セクションを作成するには、スロット トラックまたはセクション トラックを右クリックして、 [New Montage Section] を選択します。
プロンプトが表示されたら、お好きなセクション名を入力してください。
新規セクションを追加すると、セクション トラックとセクション領域内に追加されます。
デフォルトですべてのアニメーション モンタージュには、Default セクションがあり、単独で使用するとモンタージュ全体をそのまま再生します。
セクションを左クリックしてドラッグすると、お好きな場所にセクションを移動することができます。
上の図では、モンタージュの開始点に Start セクションを移動し、Default セクションを移動しました。またはこのセクションを削除することもできます。
以下の図ではさらに 2 つのセクションをリロードのためにモンタージュに追加しました。Start、 Loop、および End がアニメーションに対応しています。
モンタージュ スロットを作成する
スロットでは、関連するアニメーション (立ってリロード、しゃがみながらリロード、うつ伏せでリロードなど) のグループを使って、モンタージュ内の異なるスロットに割り当てることができます。ブループリントまたは C++ を使って、スロットのひとつに対して、キャラクターが立っているか、しゃがんでいるか、うつ伏せであるかに応じて、その中のアニメーションを再生するように指示します。
モンタージュ領域にスロットを追加するには、右クリックのコンテキスト メニューを使って [New Slot] を選択します。
これで空のスロット トラックが作成されるので、新規アニメーションを追加することができます。
[Duplicate Slot] を選択すると、すべてのアニメーション セグメントを新規スロット トラックにコピーします。
スロットを追加または複製すると、現在のスロット名が既に使用されており、名前は固有のものでなければならない旨の警告がモンタージュ上部に表示されます。これは新規スロット トラックがデフォルトでモンタージュ作成時に作られた Default Group と Default Slot を使用するように設定されているからです。どの Anim Group で作業するか、どの Slot を使用するかを、スロット トラックの右にあるドロップダウン メニューから変更することができます。
新規スロットの作成は、虫眼鏡 ボタンをクリックし、Anim Slot Manager で行います。ボタンをクリックすると Anim Slot Manager が開きます。
[Add Slot] ボタン (またはニーズに応じて Add Group ボタン) をクリックし、新しい固有の名前を付けます。
上の図では、Prone という新規スロットを作成しました。これに、うつ伏せになってリロードするアニメーションを追加することができます。
Anim Slot Manager でスロットまたはグループを右クリックして、追加のオプションがあるコンテキスト メニューを表示させます。
| メニューオプション | 説明 |
|---|---|
| Set Slot | 選択したスロットを別の Anim Group に移動することができます。 |
| Rename Slot | 現在選択中のスロットの名前を変更することができます。 |
| Delete Slot | 選択中のスロットを削除します。 |
| Add Slot | 新規スロットを追加します。 |
| Add Group | 新規 Anim Group を追加します。 |
以下では、Default Slot を Standing に名前変更して、モンタージュ領域に Standing スロットと Prone スロットを追加しました。
複数のスロットを使用する
複数スロットを使う場合は、アニメーションのタイミングを同じにすると最高の結果がでます。以下の画像では、矢印は Prone Reload アニメーションのタイミングが Standing Reloading アニメーションと一致していないことを示しています。これはモンタージュの Prone スロットを再生する際に問題を生じます。
モンタージュのループ セクションを呼び出すと、Standing Reload は問題なく再生されますが、Prone Reload では、アニメーションの途中から開始し、実際にループ セクションに到達する前にリロードのループも開始します。理想としては、リロード アニメーションを作成する場合、同じタイミングとフレーム範囲を使用して、Standing スロットまたは Prone スロットのいずれかでLoop Section を呼び出す場合、問題なくアニメーションの開始点で始まるようにします。
上の図では、Standing アニメーションと Prone Reloading アニメーションのタイミングは同じであり、再生するいずれかのスロットを呼び出すと良い結果になります。
セクションの関係
モンタージュ領域でモンタージュのセクションを作成したら、セクション領域でセクション間の関係性を定義することができます。
デフォルトですべてのセクションは、各セクションが含まれる単一のセクション トラックで示されるように順次に再生されるように設定されています。
[Clear] ボタンを押すと、作成した各セクションに対してひとつのトラックを割り当てます。
[Create Default] を押すと、すべてのセクションを単一のセクション トラックに戻します。
この例では、Start、Loop、および End があり、モンタージュで Start セクションを再生し、直後に Loop セクションを再生させます。Loop セクションに到達したら、ブループリントまたは C++ を通して End セクションを再生するように指示があるまで Loop セクション をループし続けます。
これを行うには、まずセクション トラックで [Start Section (セクションを開始)] をクリックします。
Start セクションの次に何が続くかを定義することができます。セクション領域上部にある [Loop] ボタンをクリックします。
これを行う場合、1 番めのトラックで Loop を追加して、Start の後に続くようにします。トラック上で Loop をクリックして、次に上部の [Loop] ボタンをクリックすると、Loop の色が青に変わります。
Loop をそれ自体と関連付けたので、システムはこのセクションをループさせることを認識します。
プレビューするトラック上で [Preview] ボタンをクリックし、下部のツールバーから [Play] ボタンをクリックするとプレビューすることができます。
この例では、Standing スロットまたは Prone スロットのいずれかで Start セクションを呼び出すと、割り当てられた Start アニメーションを再生してから、割り当てられた Loop アニメーションに移動しループします。これにより、プレイヤーがフル リロードまたはパーシャル リロードを行うかなどのゲームプレイ変数に基づきリロードのアニメーションを必要な回数だけ再生します。リロードを終了したと判断したら、次に再生する End セクションを呼び出してアイドル ポーズに戻ることができます。
セクションの関係性を解除するには、アイテムの隣にある [X] ボタンをクリックします。
Loop セクションの関係性を解除すると、ループが停止します。
追加オプション
Element Timing エリアは情報目的で、Animation Montage の概要 ページで説明されています。つまり。セクション、通知、その他のイベントの連続再生が一目瞭然です。アニメーション通知 を使うとアニメーションの特定のポイントに設定することができます。アニメーション カーブ を使うと、アニメーションの再生中に Material パラメータまたは Morph Target の値を変更する方法を提供します。
モンタージュ エディタ下部にある Timeline を使うと、モンタージュを再生し、モンタージュを前に進む、後ろに戻る、プレビュー再生をループする、ビューポートからボーン操作を記録して新規アニメーション オブジェクトを作成することができます。
モンタージュのプロパティ
以下は Asset Details ウィンドウから利用可能な Montage アセット プロパティの概要です。
| モンタージュのプロパティ | |
|---|---|
| Animation | |
| Preview Pose Asset | 任意のモーフターゲットまたはカーブをプレビューするために使用可能な Pose アセット をポイントします。 |
| Rate Scale | モンタージュの再生速度を示す乗数値です。デフォルトは 1.0 です。 |
| Skeleton | モンタージュと関連したスケルトンを格納します。エディタで変更はできません。 |
| Parent Asset | クック中にこのデータは Normal Asset にベイクするために使われます。エディタで変更はできません。 |
| Asset Mapping Table | これは Parent Asset で設定されて、 Asset User Data マッピング テーブルで作業する場合に使用されます。エディタで変更はできません。 |
| Asset User Data | アセットと共に保存されるユーザー定義のデータです。 |
| ブレンド オプション | |
| Blend In | モンタージュの再生開始の時間の長さです。この間にキャラクターが現在のポーズからブレンドインします。ブレンド オプション を設定するか、Custom Curve を追加することもできます。 |
| Blend Out | モンタージュ再生終了の時間の長さです。この間にキャラクターはオリジナルのポーズに再びブレンドします。ブレンド オプション を設定するか、Custom Curve を追加することもできます。 |
| Blend Out Trigger Time | Sequence End からブレンドアウトのトリガーまでの時間です。値が 0 より大きい場合、Blend Out は Montage が終わるに従い終了します。値が 0 以下の場合は、シーケンスの最後から指定された値を差し引いてブレンドアウトをトリガーします。 |
| Enable Auto Blend Out | このオプションを有効にすると (デフォルトは有効) 自動的に Montage を Blend Out します。無効にすると最終ポーズが維持されます。 |
| Sync Group | |
| Sync Group | モンタージュの Sync Group を定義することができます。 |
| Sync Slot Index | Sync Group で使用するインデックスを定義します。 |
| 加算設定 | |
| Preview Base Pose | 加算ブレンドスペースで使用するベースのプレビューポーズを設定します。 |
| タイム ストレッチ カーブ | |
| Sampling Rate | 以下のカーブのサンプリング レートです。四捨五入するので、固定のタイムステップでカーブ全体をサンプリングします。 |
| Curve Value Min Precision | 連続したサンプリング セグメント間で許容される最小デルタです。この値を下回ると、セグメントを結合してマーカー数を最適化します。 |
| Markers | 追加されたマーカーの最適化リストです。 |
| Sum D T I by C I | キャッシュされたサムを表示します。 |
| Time Stretch Curve Name | モンタージュで検索するオプションの TimeStretchCurveName 名です。 |
| メタデータ | |
| Meta Data | アセットと共に保存可能なメタデータです。メタデータは Anim MetaData クラスから派生したブループリントで利用可能なクラスです。カスタムのメタデータを Animation アセットに追加することができます (Anim Sequence、 Anim Montage、 Anim Composite、 および Blendspace はすべてサポートされます)。C++ で Animation アセットからこうしたデータをクエリーできます。GetMetaData() メソッドを呼び出すか、Anim Montages で GetSectionMetaData() を使用します。 |
| サムネイル | |
| Orbit Pitch | アセット周囲の軌道カメラのピッチです。 |
| Orbit Yaw | アセット周囲の軌道カメラのヨー (左右回転) です。 |
| Orbit Zoom | オブジェクトから境界球体の距離のオフセットを設定します。 |