パブリッシュ済みアトリビュートとノード

パブリッシュ済みアトリビュート

ノード アトリビュートをアセットにパブリッシュすると、そのアトリビュートはアセット レベルで表示されるようになります。パブリッシュ済みアトリビュートは、次の 3 つの要素で構成されます。

対応するカプセル化したアトリビュートの値を直接変更しているかのように、パブリッシュされたアトリビュートを変更できます。この機能を利用して以下の処理を行うことができます。

パブリッシュ済みのアトリビュートは、アセットのインタフェースを構成し、アセットがロックされている場合でも編集できます。したがって、一連のアトリビュートをパブリッシュしてからアセットをロックすると、パブリッシュ済みの特定のアトリビュートを通してしかアセットの内容を操作できなくなります。

アセットにパブリッシュ済みの名前が存在するが、内部ノード アトリビュートに接続されていない場合は、パブリッシュ済みの名前はバインドされません。バインドされていないアトリビュートを修正しても、アセットの内容には影響しません。パブリッシュ済みの名前へのアトリビュートのバインドとバインド解除は、アセット エディタ(Asset Editor)で行うことができます。

パブリッシュ済みのアトリビュートを子アセットから親アセットにパブリッシュできます。これにより、アセット階層を構築して、シーンをより適切に管理できます。

たとえば、車のシーンで、front_wheel_AST という名前のフロント ホイールのアセットを作成し、car_AST という名前の車全体のアセットによってカプセル化できます。最初にホイールの回転を front_wheel_AST にパブリッシュしてから、これらのパブリッシュ済みアトリビュートを car_AST にパブリッシュします。

アセット ノードの独自のアトリビュートをアセット自体にパブリッシュすることもできます。これは、アセットがロックされているときに、アーティストがビューを変更したり、他のアセット アトリビュートを制御したりできるようにする場合に便利です。

テンプレートはパブリッシュ済みの名前を使用して、必要なパブリッシュ済みアトリビュートを定義します。

ノードをパブリッシュすることもできます。詳細については、パブリッシュされたノードを参照してください。

パブリッシュ済みノード

アトリビュートのパブリッシュと同様に、ノードをアセットにパブリッシュできます。どちらのタイプのアセットでも、パブリッシュ済みノードはカプセル化されたノードであり、アセットがブラック ボックス(Black Box)モードの時にのみ(アウトライナ(Outliner)アトリビュート エディタ(Attribute Editor)チャネル ボックス(Channel Box)で)表示され、選択および操作できます。

パブリッシュ済みノードは、高度なアセットでは特に、階層内でカプセル化した DAG ノードと外部 DAG ノードとのやり取りの方法を定義するのに使用されます。2つのアセット タイプに共通する一般的なノードのパブリッシュに加えて、高度なアセットでは、3 つの方法で DAG ノードをパブリッシュできます。

親アンカーまたは子アンカーは、高度なアセットのノードをアセットの外側でそれぞれノードの親または子にすることができることを示します。選択トランスフォームはアセット中心の選択(詳細についてはアセット中心の選択を参照)で選択されるノードとして機能し、ユーザにアセットの主要ノードを通知する場合に便利です。

注:

トランスフォーム付アセットの場合、アセット ノード自身は親アンカー、子アンカー、選択トランスフォームとして機能します。これらを手動でパブリッシュすることはできません。

ロックされたアセットのノードをパブリッシュする一般的な方法を以下に示します。

パブリッシュ済みノードの親子関係は、ファイルの読み込み時や書き出し時には、他の親子関係とは別に扱われます。親アンカーと子アンカーは、ノード名を直接使用せずに、親/子のパブリッシュ済みの名前を使用してオブジェクト間のリレーションシップを管理します。これは、ファイル リファレンスを処理する場合に特に便利です。

たとえば、花束のファイルを参照して、親ファイルの腕にペアレント化する場合を考えます。

花束ファイルの階層または名前を変更すると、親ファイルでは DAG パスが変更されるため、腕と花束のリレーションシップを維持することはできません。結果として、すべてのリレーションシップ データは失われ、花束の位置は原点に戻ります。

この問題を回避するには、花束をアセットにカプセル化して、子アンカーとして bouquet_GRP をパブリッシュします。これで、花束の名前と構造を変更しても、腕へのリレーションシップに影響しなくなります。

パブリッシュされていないアトリビュートとノードの非表示

パブリッシュされていないアトリビュートとノードは、アセットのうち、ユーザにアクセスさせない部分になります。残りのアトリビュートとノードを非表示にするには、ブラック ボックス(Black Box)モードに設定します(ブラック ボックス(Black Box)モードの詳細については、未パブリッシュ ノードとアトリビュートを非表示にするを参照してください)。

ただし、このようなアトリビュートとノードは表示できなくても、修正はできます。修正もできないようにするには、アセットをロックします。アセットをロックした場合、パブリッシュ済みノードのペアレント化/子化と、パブリッシュ済みアセットの修正のみが可能になります(アセットのロックの詳細については、アセットをロックするを参照してください)。

上記の 2 つの機能を一緒に使用することによって、ユーザのアセット操作を制作者の意図どおりに制限できます。