あるオブジェクトから別のオブジェクトにアニメーション データを合成、つまり転送します。アニメーション データは、シーン間または同じシーンのオブジェクト間で転送できます。複数のオブジェクトのアニメーション データを同時に合成することもできます。
重要: [アニメーションを合成](Merge Animation)コマンドは、
ユーザ インタフェースをカスタマイズのアクションとしてのみ使用可能です。使用するには、まずそのコマンドを明示的にユーザ インターフェースに追加する必要があります。シーン間でアニメーション データをやり取りするには、[アニメーションを合成](Merge Animation)ではなく、[アニメーションを保存](Save Animation)と[アニメーションをロード](Load Animation)機能を使用することを強くお勧めします。「
アニメーションの保存とロード」を参照してください。
[アニメーションを合成](Merge Animation)ダイアログ ボックスでは、アニメーション データのやり取りを行うことのできるオブジェクトを「ノード」といいます。「ソース ノード」とは、アニメーション データの転送元となることのできるオブジェクトを指し、「カレントのノード」とは、アニメーション データの受け取り側を指します。「合成ノード」とは、合成を行うために[アニメーションを合成](Merge Animation)ダイアログ ボックスで現在のノードにマッピング、つまり対応付けられているソース ノードです。
合成ノードから特定のアトリビュートのアニメーション データを転送するには、対応する現在のノードに同じアトリビュートが必要です。たとえば、アニメートされた[ベンド](Bend)モディファイヤが合成ノードに適用されている場合、アニメーション データが正しく転送されるには、現在のノードにも[ベンド](Bend)モディファイヤが適用されている必要があります。
[アニメーションを合成](Merge Animation)機能は、キャラクタ構造など、よく似た階層の間でアニメーション データを転送する場合に便利です。キャラクタ作成時に各キャラクタのボーンに名前を付けるとき、キャラクタ名にボーンの位置を示すサフィックスまたはプレフィックスを付加することがよくあります。たとえば、Alien というキャラクタのボーンの場合、Alien_Pelvis、Alien_LeftHand などの名前を付けることがあります。また、Chef というキャラクタのボーンには、Chef_Pelvis、Chef_LeftHand などの名前を付けることができます。[アニメーションを合成](Merge Animation)ダイアログ ボックスでは、プレフィックスとサフィックスを自動的にフィルタリングできるため、複雑な階層を持つ合成ノードをすばやくマッピングできます。
注: キャラクタ間でアニメーション データを合成する場合、各キャラクタのボーン名に同じプレフィックスとサフィックスを使用すると、処理がいっそう簡単になります。
手順
現在のシーンのアニメーションを別のシーンのアニメーションに置換するには:
- 合成後のアニメーション データを受け取るシーンをロードします。
- [アニメーションを合成](Merge Animation)ダイアログ ボックスを開きます。
- [アニメーションを合成](Merge Animation)ダイアログ ボックスの[ソース ファイル](Source File)をクリックして、アニメーション データの合成元となるファイルを選択します。オブジェクトが[オブジェクト マッピング](Object Mapping)ロールアウトの[ソース ノード](Source Nodes)の下に表示されます。
- [オブジェクト マッピング](Object Mapping)ロールアウトでソース ノードを[合成ノード](Merge Nodes)列にドラッグ アンド ドロップして、ソース ノードを適切な現在のノードに対応付けます。
- [ソースの時間範囲](Source Time Range)領域で[アニメーションを置き換え](Replace Animation)を選択します。
- 合成するソース ノードのアトリビュートを指定します。
- [アニメーションを合成](Merge Animation)をクリックして、合成ノードから現在のノードにアニメーション データを合成します。
あるキャラクタから別のキャラクタにアニメーション データを挿入するには:
[ソース オブジェクト](Source Objects)入力フィールドと[使用中のオブジェクト](Current Objects)入力フィールドには、ノード名のプレフィックスとサフィックスをフィルタリングするためのワイルドカード式を入力できます。フィルタリングされたテキストは自動名前マッピング ツールで無視されるため、似た名前を持つ複雑な構造のノードをすばやくマッピングすることができます。ソース ノードと現在のノードが同じ命名規則を使用している場合、この機能はキャラクタ構造間でのアニメーションの転送に便利です。
- アニメーション データの合成先となるキャラクタのファイルをロードします。
- [アニメーションを合成](Merge Animation)ダイアログ ボックスを開きます。
- [ソース ファイル](Source File)をクリックし、アニメーション ソース ファイルを選択します。
- [アニメーションを合成](Merge Animation)ダイアログ ボックスの[ソース オブジェクト](Source Objects)の下で、名前に同じ文字列を含む複数の項目をワイルドカード式で指定します。たとえば、キャラクタのボーンの名前が Skater_Head、Skater_RFoot などの場合、[ソース オブジェクト](Source Objects)の下に Skater* と入力します。
- [ソース オブジェクト](Source Objects)の[ソースのリストを更新](Refresh for Source)をクリックします。
- [使用中のオブジェクト](Current Objects)の下で、現在のノードのプレフィックスまたはサフィックスをフィルタリングするワイルドカード式を使用します。[使用中のリストを更新](Refresh)をクリックします。
- [名前でマッピングを自動化](Auto Name Mapping)をクリックします。
現在のノードと同じプレフィックスまたはサフィックスを持つソース ノードが[合成ノード](Merge Nodes)列に表示されます。
- ソース ファイルのアニメーション データに置き換えるか、アニメーション データを貼り付けるかを指定します。アニメーション データを貼り付ける場合、合成ノードのフレーム時間が現在のノードに追加されます。
- 合成するソース ノードのアトリビュートを指定します。
- [アニメーションを合成](Merge Animation)をクリックして、合成ノードから対応する現在のノードにアニメーション データを合成します。
あるキャラクタ アセンブリから別のキャラクタ アセンブリにアニメーションを挿入するには:
キャラクタ アセンブリの場合、[アニメーションを挿入](Insert Animation)機能でアニメーション データを合成できます。
- アニメーション データの合成先となるファイルをロードします。
- キャラクタ アセンブリ ノードを選択します。
- [修正](Modify)パネルの[アニメーションを挿入](Insert Animation)をクリックします。アニメーション データの合成元となるソース ファイルを選択します。
- 前述の手順のステップ 4 以降に従います。
同じシーンの複数のオブジェクトに含まれるアニメーションを合成するには:
- [アニメーションを合成](Merge Animation)ダイアログ ボックスを開きます。
- [ソース オブジェクト](Source Object)をクリックし、アニメーション データの転送元となるオブジェクトを選択します。このオブジェクトとオブジェクトの階層が[オブジェクト マッピング](Object Mapping)ロールアウトの[ソース ノード](Source Nodes)の下に表示されます。
- [オブジェクト マッピング](Object Mapping)ロールアウトでソース ノードを[合成ノード](Merge Nodes)列にドラッグ アンド ドロップして、ソース ノードを適切な現在のノードに対応付けます。
- ソース ファイルのアニメーション データに置き換えるか、アニメーション データを貼り付けるかを指定します。アニメーション データを貼り付ける場合、合成ノードのフレーム時間が現在のノードに追加されます。
- 合成するソース ノードのアトリビュートを指定します。
- [アニメーションを合成](Merge Animation)をクリックして、合成ノードから現在のノードにアニメーション データを合成します。
インタフェース
[アニメーションを合成](Merge Animation)ダイアログ ボックスには、次のコントロールがあります。
[ソース オブジェクト](Source Objects)領域
- ソース ファイル
- アニメーション データを含むソース ファイルを選択するときにクリックします。このファイルのアニメーション データが現在のシーンに合成されます。シーンのオブジェクトがすべて、[オブジェクト マッピング](Object Mapping)ロールアウトの[ソース ノード](Source Nodes)の下に表示されます。
- ソース オブジェクト
- 現在のシーンの中からソース オブジェクトを選択します。ソース オブジェクトを選択すると、[ソース ファイル](Source File)での選択内容は無視されます。
[ソースの時間範囲](Source Time Range)領域
- 現在の時間範囲に調整
- オンにすると、現在の時間範囲をソース範囲設定に合わせて調整します。
[適用先](Apply To)/[メインアトリビュート](Main Attributes)領域
アニメーション データを合成するソース ファイルのアトリビュートを指定します。アトリビュートのアニメーション データを合成するには、現在のノードに合成ノードと同じアトリビュートが必要です。
- 変換
- 合成時に[位置](Position)、[回転](Rotation)、[スケール](Scale)のアニメーション データの選択を有効にします。
- IK
- IK ソルバで作成された IK チェーンのアニメーション データを合成します。
- 位置
- [位置](Position)の変換アニメーション データを合成します。
- 回転
- [回転](Rotation)の変換アニメーション データを合成します。
- スケール
- [スケール](Scale)の変換アニメーション データを合成します。
- モディファイヤ
- モディファイヤのアニメーション データを合成します。モディファイヤのアニメーション データを転送するには、現在のオブジェクトに同じモディファイヤが既に適用されていることが必要です。
[適用先](Apply To)/[追加アトリビュート](More Attributes)領域
ソース ファイルから合成するその他のアトリビュートを選択します。
- カスタム アトリビュート
- ソース オブジェクトのカスタム アトリビュートのアニメーション データを合成します。
- 新規定義を追加
- 現在のオブジェクトにソース オブジェクトと同じ定義がない場合、現在のオブジェクトにカスタム アトリビュートの定義を追加します。
- オブジェクト定義
- 基本オブジェクト レベルのパラメータのアニメーション データを合成します。たとえば、球の[半径](Radius)パラメータをアニメートする場合、このチェック ボックスにチェックマークが付いている場合、[半径](Radius)アニメーション データが合成されます。また、このオプションをオンにすると、スプライン オブジェクトや編集可能メッシュ オブジェクトの頂点のアニメーションなど、オブジェクトのサブオブジェクト レベルのアニメーション データも合成されます。
- マテリアル/マップ
- マテリアルやマップのアニメーション データを合成します。
- 可視トラック
- 可視トラックのアニメーション データを合成します。
- アニメーションを合成
- このダイアログ ボックスの設定に基づいてアニメーション データが合成されます。アニメーション データを合成する前に、[オブジェクト マッピング](Object Mapping)ロールアウトの[使用中のノード](Current Nodes)に対応するソース ノードのリストが[合成ノード](Merge Nodes)に表示されていることが必要です。合成処理の進捗は、ダイアログ ボックスの下部にある進捗状況バーに表示されます。合成後、このダイアログ ボックスは画面に残るため、合成が正しく行われたかどうかをチェックしてからダイアログ ボックスを閉じることができます。
- 最終の合成を元に戻す
- 最後の合成を元に戻します。合成が正しく行われなかった場合、設定を変更して再試行できます。
[オブジェクト マッピング](Object Mapping)ロールアウト
ソース オブジェクトと現在のオブジェクトを 1 対 1 に対応付けます(マッピング)。[合成ノード](Merge Nodes)列のオブジェクトにあるアニメーション データは、[使用中のノード](Current Nodes)列の対応するオブジェクトに合成されます。
[合成ノード](Merge Nodes)列にオブジェクトを移動するには、[ソース ノード](Source Nodes)列からオブジェクトをドラッグする方法と、[名前でマッピングを自動化](Auto Name Mapping)を使用して、名前が全体的または部分的に一致するオブジェクトを自動的にマッピングする方法があります。
- ソース オブジェクト
-
ソース オブジェクトをフィルタリングするためにワイルドカード式を指定します。ワイルドカード式で指定したオブジェクトを表示するには[ソースのリストを更新](Refresh)をクリックします。
- ソースのリストを更新
-
[ソース オブジェクト](Source Objects)フィールドに入力したワイルドカード式に基づいて、表示内容が更新されます。
- ソース ノード
-
[ソース オブジェクト](Source Object)オプションで選択したオブジェクトとその子がすべて表示されます。キーフレーム アニメーションを含むオブジェクトは赤で、手続き型コントローラ(ノイズ コントローラや式コントローラなど)を含むオブジェクトは緑で表示されます。[ソース オブジェクト](Source Objects)フィールドにワイルドカード式を入力して、表示内容を限定することができます。
- 使用中のオブジェクト
-
現在のオブジェクトをフィルタリングするためにワイルドカード式を指定します。ワイルドカード式で選択したオブジェクトを表示するには[更新](Refresh)をクリックします。
- 使用中のリストを更新
-
[使用中のオブジェクト](Current Objects)フィールドに入力したワイルドカード式に基づいて、表示内容が更新されます。
- 使用中のノード
-
現在のシーンのオブジェクトが表示されます。アニメートされたオブジェクトは赤で表示されます。[使用中のオブジェクト](Current Objects)フィールドにワイルドカード式を入力して、表示内容を限定することができます。
- 合成ノード
-
[使用中のノード](Current Nodes)の下にある対応オブジェクトからアニメーション データを受け取る現在のオブジェクトがリスト表示されます。[合成ノード](Merge Nodes)列にオブジェクトを移動するには、[ソース ノード](Source Nodes)列から項目をドラッグ アンド ドロップする方法と、[名前でマッピングを自動化](Auto Name Mapping)を使用して、名前が全体的または部分的に一致するオブジェクトを自動的にマッピングする方法があります。
- 上に移動
-
選択した合成ノードを 1 行上に移動します。
- 選択をクリア
-
[合成ノード](Merge Nodes)の下の選択項目をクリアします。
- 下に移動
-
選択した合成ノードを 1 行下に移動します。
- 名前でマッピングを自動化
-
現在のオブジェクトに名前が一致するソース オブジェクトを[合成ノード](Merge Nodes)列に自動的にマッピングします。このマッピング処理では、[ソース オブジェクト](Source Objects)と[使用中のオブジェクト](Current Objects)の各フィールドに入力したワイルドカード式によってオブジェクトがフィルタリングされます。ワイルドカード式を入力しない場合、ソース オブジェクトは同じ名前を持つ現在のオブジェクトにのみマッピングされます。
[表示オプション](Display Options)領域
- アニメーションのみを表示
- アニメートされたオブジェクトのみを表示します。
- インデント
- 子オブジェクトを表示するときのインデント文字数を設定します。
- マッピングをロード
- 以前保存した .mnm ファイルをロードします。この種類のファイルは、[アニメーションを合成](Merge Animation)ダイアログ ボックスでのみ、ロードと保存を行うことができます。
- マッピングの保存
- 現在のマッピングを .mnm ファイルに保存します。ソース ファイルの名前と、ソース オブジェクトと現在のオブジェクトのマッピングが保存されます。この種類のファイルは、[アニメーションを合成](Merge Animation)ダイアログ ボックスの[マッピングをロード](Load Mapping)ボタンでのみロードできます。