On this page | |
Since | 16.0 |
概要 ¶
このプロシージャルシェーダにSOPアセットを指定することで、レンダリング時にインスタンスジオメトリを生成することができます。 ソースポイント上にそのアセットのパラメータと同じ名前のアトリビュートが存在すれば、Mantraはそのパラメータをアトリビュート値に設定してから、 そのSOPをクックして、そのポイントに対してジオメトリを生成します。これは、Copy Stampと非常に考え方が似ています。
例えば、カーブを生成するHDA(つまり、Hair Generate)を使用するようにプロシージャルを設定してから、アトリビュート付きの単一ポイントを追加することで、ヘアー生成を制御することができます。
Warning
このプロシージャルは、カーブジオメトリ(ポリゴンカーブ、Bezierカーブ、NURBSカーブ)だけを生成することができます。
Warning
このプロシージャルを使ってシーンをレンダリングするには、Mantraが最低でもBasic Engineモードを使用するようにしなければなりません。
Basic Engineモードを使用するには、-e basic
コマンドラインオプションを使用するか、またはMANTRA_ENGINE_PROCEDURAL
環境変数を使用します。
-eのヘルプを参照してください。
メモ ¶
-
境界ボックスを指定しなかった場合、このプロシージャルは、このオブジェクトのジオメトリ境界ボックスを予測されるインスタンスサイズまで大きくして使用します。
-
使用するSHOPがSOPの中のSHOPネットワークに入っている場合、シーンファイルではそのSOPを非表示にしてください。また、出力ドライバの SHOP References パラメータを Declare all SHOPS に設定してください。
-
プロシージャルシェーダは、その詳細レベルを
lod
パラメータに渡します。lod
アトリビュートが存在すれば、そのアトリビュートがMantraで計算された詳細レベルを上書きします。
パラメータ ¶
Main ¶
SOP
SOPタイプの名前。これは、ラベルではなく内部名です。例えば、box
、platonic
、sphere
です。
OTL Files
SOPを作成する前にHScriptがotload
するアセットライブラリのパス。
Basic Size
各インスタンスの評価最大サイズ(各方向の半径)。Mantraは、インスタンス化した後のオブジェクトの新しい境界ボックスを計算する時にこのサイズを使用します。 インスタンスに追加する余裕代を過小評価するとレンダリングエラーが発生する可能性があるのに対し、過大評価するとレンダリングが遅くなってしまいます。そのため、過大評価の方が良いです。
Orient to Point
インスタンスをポイントのVelocityに揃えようとします。これが無効な時、シェーダはポイントの空間に変換されます。
Defer Geometry Creation
通常では、プロシージャルをレンダリングする時にすべてのジオメトリを生成します。 これを有効にすると、各インスタンスがレンダリングされるまでインスタンスの生成を遅延させます。 例えば、インスタンスがばら撒かれている時に、それらのインスタンスのいくつかだけをレンダリングしたい時、このオプションによって、いくつかのジオメトリが生成されないのでメモリを節約することができます。
このオプションが有効な時、プロシージャルは、異なるポイントインスタンス間でジオメトリを共有できなくなります。 そのため、同じジオメトリをたくさんのポイント上にインスタンス化している場合、そのジオメトリが(インスタンス化ではなく)複製されるので、Mantraは より多くの メモリを使用することになります。
SOP HDA Requires LOD
近似詳細レベルを計算して、それをSOPアセット上のlod
パラメータ(存在すれば)に渡されます。
あなたのSOPアセットがLODを使って別々にクックしないのであれば、Mantraの効率を上げるために、これを無効にしてください。
IFD Bounds ¶
Bounding Box
生成されるジオメトリ全体の境界ボックス。Bounding Boxが“on screen”の場合にのみ、Mantraは参照ジオメトリを読み込みます。 境界ボックスを推定できない場合は、常にジオメトリが読み込まれるように、これを No bounding box required に設定してください。 SOP Bounds パラメータのSOPの境界ボックスを参照することで、境界ボックスを指定することもできます。
SOP Bounds
このSOPの境界ボックスを、生成されるジオメトリ全体の境界ボックスとして使用します。
Min Bounds
明示的に境界を設定する時の最小境界ボックスの寸法。
Max Bounds
明示的に境界を設定する時の最大境界ボックスの寸法。