軸に位置合わせされたボリューム 1 の単位立方体を、原点を中心として生成します。
geometry "mib_geo_cube" ()
パラメータはありません。
所定の数の U および V サブディビジョンを持ち、原点を中心としたポリゴン球を生成します。球は Z 軸(横軸)上の v_subdiv サブディビジョンと XY プレーン(縦軸)上の u_subdiv サブディビジョンに細分化されます。
geometry "mib_geo_sphere" ( integer "u_subdiv", integer "v_subdiv")
Z 軸を中心とし、頂点が Z=0、ベースが Z=-1 であるポリゴン円錐を生成します。コーンの底面の半径は 1、高さも 1 になります。円錐の底面の円板は u_subdiv サブディビジョンに分割され、円錐の側面は Z 軸方向に v_subdiv サブディビジョンに分割されます。コーンのベースにキャップをするかどうかはパラメータでコントロールします。
geometry "mib_geo_cone" ( integer "u_subdiv", integer "v_subdiv", boolean "capped")
u_subdiv が 3 よりも小さいか v_subdiv が 0 よりも小さい場合は、シェーダはサブディビジョンの既定値を使用します。
Z 軸を中心とし、底面が Z=-1、上面が Z=0 であるポリゴン円柱を生成します。円柱の半径は 1、高さも 1 になります。円柱の 2 つの円板は u_subdiv サブディビジョンに分割され、側面は Z 軸方向に v_subdiv サブディビジョンに分割されます。底面または上面にキャップをするかどうかはパラメータでコントロールします。
geometry "mib_geo_cylinder" ( integer "u_subdiv", integer "v_subdiv", boolean "bottom_capped", boolean "top_capped")
u_subdiv が 3 よりも小さいか v_subdiv が 0 よりも小さい場合は、シェーダはサブディビジョンの既定値を使用します。
XY プレーンに置かれ、中心が原点にあるポリゴンのトーラスを生成します。トーラスは 2 つの円で定義され、小さい円が大きい円の中心を回転している形状を指します。
geometry "mib_geo_torus" ( scalar "radius", scalar "thickness", integer "uSpans", integer "vSpans")
省略した場合は(0 に設定されます)、既定で radius は 2.0、thickness は 1.0、uSpans は 32、vSpans は 32 にそれぞれ設定されます。
中心が原点に位置合わせされ、法線の方向が正の Z 軸を指す、面積 1 の正方形が生成されます。
geometry "mib_geo_square" ()
パラメータはありません。
上記のジオメトリシェーダのうちいずれか 1 つを指定し、ジオメトリを変換、スケーリング、および回転するインスタンスを構築し、唯一のメンバであるソースジオメトリのインスタンスを使用してグループを戻します。ベースシェーダがリストに含まれているために結果がゼロでない場合は、新しいグループは作成せずに、結果として作成されるグループにこのインスタンスを追加します(ジオメトリシェーダの通常の動作です)。
geometry "mib_geo_instance" ( geometry "object", miMatrix "matrix", material "material")
このインスタンスシェーダは 1 つ前に紹介したものと同じですが、マテリアル配列に対応しています。配列に複数のメンバが存在する場合は、マテリアル配列は新しいインスタンスのマテリアルリストに変換されます。マテリアルリストは、インスタンス化されたオブジェクトがタグ付けされている場合に便利です。すなわち、オブジェクトのポリゴンまたはサーフェスがマテリアル配列のインデックス指す整数を含んでいる場合です。
geometry "mib_geo_instance_mlist" ( geometry "object", miMatrix "matrix", array material "material")
このシェーダは入力オブジェクト(サーフェスのフリーフォーム タイプ)のコピーを返します。全部のフェースを輪にし、最終のテクスチャ サーフェスとして各フェースに 1 度のベジェ テクスチャを追加します。テクスチャ サーフェスのパラメータおよびコントロール ポイントは、テクスチャ頂点座標に対するジオメトリックな近似のパラメトリック UV 座標のマッピングが正確に行われるように選択されます。たとえば、三角形の頂点のテクスチャ座標は、三角形の頂点位置の UV 座標です。ベジェの基底は必ずオブジェクトのコピーに追加されます。
geometry "mib_geo_add_uv_texsurf" ( geometry "object")
Copyright © 1986, 2015 NVIDIA ARC GmbH. All rights reserved.