この例では、アセットとファイル リファレンスを使用して、すべての動作を損なうことなく、シーンのオブジェクトをすばやく交換する方法を示します。
都会のシーンに参照される低ポリゴンの車のスケールとアニメーションを考えます。
ソース ファイル(Car_low_poly.ma)では、車のモデルは Car_AST という名前のアセットに編成されています。アセットのパブリッシュ済みアトリビュートには、車の移動と回転の値、ホイールのスピン、フロント ホイールの左右のターンなどがあります。親シーンでは、アニメーションはこれらのパブリッシュ済みアトリビュートを変更することで実現されます。このようなアトリビュートはリファレンスの編集と呼ばれ、ペアレント ファイル(City.mb)に格納されます。
リファレンスの編集を表示するには、リファレンス エディタ(Reference Editor)からファイル > リファレンスの編集をリスト(File > List Reference Edits)を選択します。
ここで以前の車のモデルを新しい車のモデルに置き換える場合を考えます。この新しい車は固有のファイル(Car_high_poly.ma)に格納されます。
新しいモデルは、オリジナルのモデルとは構造が異なり、ノード、ステアリング、ホイール、窓、サイド ドア、トランクなどのディテールが追加されています。
さらに重要なことに、この新しいモデルはオリジナルの車と同じ名前(Car_AST)と同じパブリッシュ済みアトリビュートを持つアセットに編成されています。これは親ファイルのリファレンスの編集がパブリッシュ済みの名前によって格納されているため、きわめて重要です。また、パブリッシュ済みアトリビュートを追加して、以前の車には表示されなかったドア、窓、その他のディテールの状態を制御することもできます。
これで既存のリファレンスを新しい車のリファレンスに置き換えて、都市のシーンの以前の車を変更できるようになります。
以前の車が、適切なスケールの新しい車に置き換えられます。シーンを再生すると、新しい車も以前の車と同じアニメーションを実行します。
リファレンスの編集は、アセットのパブリッシュ済みの名前に従って親シーンに格納されるため、この車は同じ名前とパブリッシュ済みアトリビュートを持つリファレンスされたアセットに置き換えることができます。これにより、シーンを損なうことなく、さまざまなオプションを柔軟に試してみることができます。
この例では、リファレンス エディタ(Reference Editor)とリファレンスの置き換え(Replace Reference)コマンドを使用しています。ただし、アトリビュート値の転送(Transfer Attribute Values)コマンドを使用しても、同じ結果を得ることができます。これを行うには、両方の車を同じファイルに配置して、オリジナルの車のアトリビュートを新しい車に転送します。このワークフローの例については、例: ロボットの腕を入れ替える(高度なアセットのみ)を参照してください。