.ass ファイルとして書き出され、プロシージャルとして読み込まれたヒヨコ モデル

 

任意のオブジェクトを .ass ファイルとして書き出すことができます。  プロシージャル(スタンドイン、プロキシ、またはプレースホルダとも呼ばれます)は、ディスク上の .ass ファイル(または、.abc、.obj、.ply、.usd などの、Arnold によってサポートされる他のプロシージャル形式)を参照します。レンダリングを行うときまでジオメトリ データのロードを保留にできるため、作業中のシーンが軽くなり、作業しやすくなります。

書き出し時に、Arnold の現在のレンダリング設定が使用されます。したがって、スタンドインを書き出す前に、これらの値を確定する必要があります。 たとえば、書き出す際にモーション ブラーを有効にするかどうかを選択する必要があります。

ユーティリティ シェーダのオブジェクト モードはプロシージャル(スタンドイン)では機能しません。これは既知の制限事項です。utility シェーダのモードが「オブジェクト」の場合、球のカラーは変更されます。 ただし、スタンドイン カラーは変わりません。

プラグイン間で Arnold プロシージャルを共有する

ユーザによっては、Maya、3ds Max、Houdini、C4D を組み合わせて使用するスタジオ環境で作業する場合があります。Arnold がプラグインとシェーダの両方を見つけることができるのであれば、.ass Arnold プロシージャル(スタンドイン)を書き出して、他の Arnold プラグインで再利用すること(およびその逆)は完全に可能です。これを行うには、両方のシェーダのセットを選択するために、Arnold シェーダのパス環境変数 ARNOLD_PLUGIN_PATH を確実に設定する必要があります。

スタンドインの紹介」のチュートリアルは、こちらにあります。 スタンドインで USD ファイルを開き、オペレータを使って修正する方法を紹介したチュートリアルは、こちらにあります。

File/Frame
スタンドイン
スタンドイン
スタンドイン
スタンドイン
スタンドイン

 

ワークフローは次のとおりです。 スタンドインを使用する前に、後で使用するためにジオメトリを最初に書き出す必要があります。

ジオメトリを書き出すには、次のようにする必要があります。

  1. 書き出すジオメトリをすべて選択します。
  2. メニュー オプションで、Arnold > Scene Export > Export All/Selection to .ASS に移動します。
  3. アーカイブの名前を選択します。

Arnold > Scene Export > Export All/Selection to .ASS メニュー オプション

または、File > Export All オプションを使用して、モデルをスタンドインとして書き出すことができます。アーカイブは、Arnold Scene Source (.ass)ファイルとして保存されます。

スタンドインの書き出しオプション

 

単一のオブジェクトだけでなく、複数のオブジェクトで構成される階層全体を書き出すこともできます。また、1 つのフレームまたはフレームのシーケンスを書き出すこともできます。 この場合、ass ファイルの名前には Maya レンダラ オプションのフレーム パディング値が使用されます。 スタンドインを使用するには、スタンドイン プリミティブを作成する必要があります。 File > Import、File > Create Reference、または Arnold > StandIn > Create のいずれかを使用します(使いやすい方法を選択してください。どちらの場合も同じダイアログが表示されます)。次に、使用されるアーカイブを指定します。

アーカイブ(.ass)ファイルに加えて、ダイナミック ライブラリの形式で事前コンパイルされたカスタム プロシージャル プログラムもこの時点でロードできます。ただし、現時点では MtoA に付属していません。

 

.ass ファイルをスタンドインとして読み込む

 

これにより、通常のジオメトリの代わりに使用できるスタンドイン ノードが作成されます。スタンドイン ノードのアトリビュートについては、以下で説明します。

スタンドインを表示しているときに Maya のビューポートで速度が低下する場合は、「Bounding Box」の表示の優先をメッシュに対して有効にして、ass ファイルを書き出してください。

File/Frame

スタンドインは、スタンドイン ノードを介してサポートされます。 このノードには次のパラメータがあります。

スタンドイン

アーカイブ(.ass)ファイルへのパスです。 アーカイブの場合には、自動シーケンス認識があります。

パディング パターンには、次の形式があります。

  • name.#.ext - 例: name.1.ext、name.2.ext、name.3.ext、...、name.10.ext、...、name.100.ext、...
  • name.##.ext - 例: name.01.ext、name.02.ext、name.03.ext、...、name.10.ext、...、name.100.ext、...
  • name.###.ext - 例: name.001.ext、name.002.ext、name.003.ext、...、name.010.ext、...、name.100.ext、...
  • name####.###.ext - フレーム番号の 4 桁の パディングとサブフレームの 3 桁の パディングを示します。

例: test_001.ass というファイルを指定する場合、test_###.ass という形式のシーケンス パターンとして認識されます。自動シーケンス認識をオーバーライドする場合は、パス文字列を手動で変更し、対応するファイル名を持つパディング パターンを除去します。

 

プロシージャルの絶対/相対パス名(既定は絶対)の有効と無効を切り替えるオプションは、Render Settings の System タブにあります。


Viewport Override

Use Global Settings - Render Settings の Standin Draw 設定を使用して、スタンドインの表示方法を決定します。 
Use Local Settings: 既定の動作です。
Bounding Box - スタンドインをバウンディング ボックスとして表示します。
Disable Draw - スタンドインの表示を無効にします。

スタンドイン

プロシージャルの表示モードです。

Use File Sequence

有効にした場合は、必要な形式を調べて、シーケンスを自動的に開きます。

スタンドイン

Use Frame Extension チェックボックスで定義されたパターンに置き換わって読み込まれるフレームです。さまざまなフレームでスタンドインのシーケンスがロードされるようにするには、Maya のエクスプレッション("frameNumber = frame")を指定する必要があります。

スタンドイン

現在のフレームまでのオフセット。これを指定すると、さまざまなプロシージャルを作成する際に、同じアニメーション シーケンスを使用できます。

スタンドイン

プロシージャル内のノードをこのパラメータを設定した他のノードで置き換えることができます。 これは、既存の .ass プロシージャル内のシェーダを置き換えるなどの場合に使用できます。 パラメータを有効にすると、プロシージャルの直接の親の範囲内にあるノードは、プロシージャル内で同一の名前が付いたノードを置き換えます。

Namespace

プロシージャルは、このパラメータを使用して、カスタム ネームスペースを宣言することができます。 このカスタム ネームスペースは、絶対パスまたは相対パスを使用してコンテンツを参照するために、プロシージャル名の代わりに使用することができます。 同じカスタム名を使用して、複数のプロシージャルが同じネームスペースを共有することができます。 空白の名前を宣言することも可能で、その場合グローバル ネームスペースが使用されます。

パラメータ「Force Shader Assignments」(このワークフローに必要)は書き出しオプションの UI に表示されますが、表示されるのは「Export Shaders」が無効になっている場合のみです。 

スタンドインとシェーダを別々に書き出すためのワークフローは次のとおりです。

  1. 「Shapes」のみを有効にし、同時に「Force Shader Assignment」を有効にしてアセットを書き出します。
  2. 「Shaders」のみを有効にして、アセットを再度書き出します。
  3. 2 つのスタンドインを作成し、それぞれをロードします。
  4. 両方のスタンドインに同じ Namespace 文字列を設定します。

User Options

ユーザ オプションの詳細については、こちらを参照してください。

Ignore Group Nodes

グループ階層の下のプロキシ ジオメトリに使用でき、レンダリング時にスキップされます。 したがって、スタンドインを親とするジオメトリ、ライトなどは、このパラメータをアクティベーションしてもレンダリングに表示されません。

Object Path

階層で展開する元の Alembic パス。

Arnold プロシージャルの設定

自動インスタンス化

この機能を使用して、プロシージャルごとの選択を可能にします(現時点では、「.ass」プロシージャルのみがサポートしています)。有効にすると、同じファイル名を複数回使用した場合、インスタンスに透過的に変換されます。この回避策は、オペレータを使用してプロシージャルのパラメータを上書きする場合に便利です。

同じ .ass ファイルの自動インスタンス化を行わない場合のみ、このオプションを無効にする必要があります。既定で有効になっていますが、この機能はテクニカル ユーザのみを対象としています。

Alembic Settings

Alembic への書き出しは、Arnold -> StandIn メニューにあります。

 

Arnold の Alembic への書き出し機能を使用すると、サブディビジョンとユーザ アトリビュートのデータも Arnold 形式の命名方法に従って書き出されます。

aiSubdivType = subdiv_type
aiSubdivIterations = subdiv_iterations

 

FPS

1 秒あたりのフレーム数で示されるフレーム レート。

Layers

Alembic ファイルのプロパティをオーバーライドするために使用できる追加のファイルを追加します。

Name Prefix

プロシージャで作成されたすべてのノードに追加するオプションの接頭辞。

Make Instance

同じシェイプを持つポリメッシュ ノードにインスタンス化を使用します。既定では、この動作は無効になっています。有効にすると、プロシージャルは同一のプリミティブを(Alembic の配列ごとのプロパティ ハッシュ キーを使用して)識別し、対応する「ginstance」ノードを作成しようとします。関連するポイント位置サンプルのキーと指定したサブディビジョン値が一致する場合、2 つのプリミティブは同等とみなされます。これは、複数のアーカイブまたはプロシージャルの呼び出しに対して機能します。

Use Instance Cache

これは、ノード間で alembic データを共有する内部アーカイブキャッシュを無効にするために使用できます。オペレータを使用して alembic コンテンツをオーバーライドするときに、make_instance が有効になっている場合に役立ちます。このパラメータは既定で有効になっています。

Pull User Params

作成中のシェイプにパラメータを渡す場合、パラメータと同じタイプのユーザ データを宣言し、先頭にシェイプ名とコロン(:)を付加します。たとえば、<shape>:<parameter> を使用します。次のように宣言すると、作成するすべてのポリメッシュの step_size は 0.1 に設定されます。

 

pull_user_params on
declare polymesh:step_size constant FLOAT
polymesh:step_size 0.1

Ignore Visibility Attributes

速度アトリビュートが存在する場合でも、速度モーション ブラーを実行しないでください。

Radius Attribute Name

ポイントとカーブの半径を指定するために参照されるアトリビュートの名前は既定で空白であるため、alembic の既定の幅が使用されます。

Radius Default

アトリビュートを介して指定されていない場合の、曲線およびポイントの既定の半径。

Radius Scale

radius_attribute または radius_default で設定されている半径アトリビュートをスケールします。

Velocity Ignore

速度アトリビュートが存在する場合でも、速度モーション ブラーを実行しないでください。

Velocity Scale

速度モーション ブラーに使用する速度をスケールします。

ファイルの内容

アトリビュート エディタにファイルの内容を表示して、選択した項目にオーバーライドを適用できるようにします。

シーン ファイルとビデオがあり、オペレータ割り当てを .abc ファイルと共に使用する方法を示します。

Look

外観のバリエーションを作成、編集、または削除する場合に選択します。新しい外観を作成すると、switch_operator と merge の組み合わせである aiLookSwitch が自動的に追加され、プロシージャル グラフのルートに接続されます。最初の外観を作成すると、現在のオペレータがバリアント スイッチ ノード上の最初の入力リストに移動します。aiStandIn からメニューを入力する場合は、aiLookSwitch のラベルが使用されます。 このプラグを Render Setup ツールで設定/オーバーライドして、レイヤ/パスごとに異なる外観を追加することができます。名前/外観/パスは、レンダリングのインデックス番号に変換されます。

「緑」の外観を適用した場合

 

Add Assignment

その中のオブジェクトに割り当てることができるパラメータのリストノードのサブオブジェクトにアトリビュートとパラメータの割り当てを追加するために使用できます。選択ごとに Set Parameter ノードを作成し、Operators リストに順番に並べます。一番上が最初のオペレータで、階層の最後のリーフがリストの最後のオペレータです。

Local Overrides

階層内のノードにある割り当て。

Inherited Assignments 

以下のオブジェクトに影響を与えるか、文字列式の選択に一致するオーバーライド。 

左端のボタンを使用して作成された継承済み割り当て

 

Add Operator

グラフ内の点に汎用オペレータを追加します。選択文字列は、.ass ファイル内のノードを参照する必要があります。

オペレータのリスト

Show Graph

シェイプとそれに接続されているOperatorsのスタンドアロン グラフを表示します。

Render Stats

Render Stats セクションでは、選択したスタンドインの各種レンダリング オプションのオン/オフを切り替えることができます。

StandIn Overrides

Override Standin Light Linking

これを有効にすると、aiStandin ノードのライト リンクがスタンドイン内のすべてのオブジェクトに適用されます。

スタンドイン

これを有効にすると、aiStandin ノードに適用されたシェーダがスタンドイン内のすべてのオブジェクトのシェーダをオーバーライドします。

プロシージャル ファイル内で設定された値をオーバーライドします。 「Override ...」という項目を無効にする、つまりオフにするということは、その値がスタンドインに強制されなくなるということです。

シェーダをオーバーライドしても、ディスプレイスメント マップはオーバーライドされません。 ディスプレイスメントは Arnold によって別個に処理されます。シーンが MtoA によって Arnold に変換されている場合、ディスプレイスメントはオブジェクトに適用された「シェーダ」の一部ではないからです。

その他のアトリビュート

ユーザには非表示になっているいくつかの追加のアトリビュートがあります。たとえば、overridePrimaryVisibilityoverrideOpaque などです。 これらは、スタンドインのアトリビュート エディタの Extra Attributes の下部にあります(下を参照)。 StandIn Overrides のコントロールを使用する場合、MtoA は Extra Attributes の下の該当するチェック ボックスを自動的に更新します。 たとえば、Primary Visibility をオーバーライドするには、追加アトリビュートである overridePrimaryVisibility も有効にする必要があります。

スタンドイン

メッシュに対して Arnold のプロシージャル トランスレータを使用して、プロキシ ジオメトリでスタンドインを表すことができます。 この機能は、メッシュのバウンディング ボックスに関する Maya からの情報を使用します。 スタンドインがクリップされている場合、Defer Procedural Load を無効にするか、または User Options を使用してプロシージャルの最小値と最大値を設定できます(たとえば、最小値 -1 -1 -1 最大値 1 1 1)。

ポリメッシュ プロシージャル トランスレータ

 

 

Privacy settings / Do not sell my personal information / Privacy/Cookies