これらのシェーダは、これまでに説明したテクスチャ空間マッピング機能のいずれかを使用して coord テクスチャ頂点を作成し、この頂点のカラーを作成します。2D マッピングを作成するシェーダは、テクスチャ頂点の x 成分および y 成分のみを使用します。
これらのシェーダのほとんどはカラーを返します。カラーは他のシェーダのスカラー パラメータに割り当てることができるので、マップ スカラーに基づいてカラースプレッドからカラーを選択するブレンドシェーダをこれらのシェーダを組み合わせて使用することができます。この場合は、テクスチャシェーダの減衰パラメータおよびスムージングパラメータと相互作用します。
ハーフ オープンの間隔 [0, 1)にあるテクスチャイメージをルック アップします。この間隔の外部にあるポイントは R=G=B=A=0 にマッピングされます。
color "mib_texture_lookup" ( color texture "tex", vector "coord")
これは基本的にシェーダ インタフェース機能の mi_lookup_color_texture ファミリに対する前工程です。
color "mib_texture_lookup2" ( color texture "tex", scalar "factor")
mib_texture_lookup の代替です。接続されたパラメータとして取得せずに、状態内のテクスチャ座標の最初のセットを使用します。
楕円フィルタリングを使用してテクスチャ イメージをルックアップします。
color "mib_texture_filter_lookup" ( color texture "tex", vector "coord", scalar "eccmax", scalar "maxminor", scalar "disc_r", boolean "bilinear", integer "space", shader "remap")
シェーダは指定された space パラメータを使用して mi_texture_filter_project を呼び出すことにより、ラスタ空間およびテクスチャ空間の 3 つの対応するポイントを取得します。これらの 3 つのテクスチャ座標は、指定された remap シェーダを呼び出すことによって再マッピングされ、再マッピングに使用する実際のテクスチャ座標は mi_call_shader_x の 4 番目の引数として渡されます(呼び出されるシェーダは mi_call_shader_x の 4 番目の引数を参照するように設計されている必要があります)。再マッピング シェーダは、シェーダ パラメータ内の指定されたテクスチャ座標ベクトルの代わりにこれを使用する必要があります。
フィルタリングによるテクスチャ ルックアップによって必要とされる投影変換行列は、3 つのラスタ空間座標および再マッピングされたテクスチャ空間座標を使用して mi_texture_filter_transform シェーダ インタフェース関数を呼び出すことによって計算されます。行列内の変換コンポーネントは coord に設定されます。投影変換は常に現在のラスタ位置について計算されますが、coord を使用してテクスチャ空間内の楕円を変換することも可能です。バンプマッピングで使用すると便利です。
これは基本的にシェーダインタフェース機能の mi_lookup_filter_color_texture ファミリに対する前工程です。楕円フィルタパラメータ bilinear は mib_texture_filter_lookup では false に設定され、circle_radius では既定値が使用されます。投影行列を正しく計算できない場合や、テクスチャがイメージではなくシェーダである場合や、反射レベルがゼロでない場合は、フィルタリングされていないテクスチャルックアップが使用されます。
単位立方体を 8 個の副立方体に分割し、それぞれを個別の RGBA カラーにします。左、下、正面のパーツの幅はプログラム可能なため、このシェーダを使用してストライプや 2D または 3D のチェッカーボードを生成することができます。この機能は、シェーダボール シーンのプレビューにも使用できます。
color "mib_texture_checkerboard" ( vector "coord", scalar "xsize", scalar "ysize", scalar "zsize", color "color000", color "color001", color "color010", color "color011", color "color100", color "color101", color "color110", color "color111")
単位正方形に直径をプログラム可能な円形を描画し、単位立方体に直径をプログラム可能な球を描画します。フォアグアラウンド カラーおよびバックグラウン ドカラーはプログラム可能です。
color "mib_texture_polkadot" ( vector "coord", scalar "radius", color "fgcolor", color "bgcolor")
color "mib_texture_polkasphere" ( vector "coord", scalar "radius", color "fgcolor", color "bgcolor")
基本の立方体の中に動きの激しいスカラー型パターンを生成します。1 つ、2 つ、または 3 つのテクスチャ ベクトル要素すべてを極座標上で計算して、球面マッピングをおこないます。
scalar "mib_texture_turbulence" ( vector "coord", scalar "spacing", scalar "strength", scalar "power", integer "iteration", integer "polar_dim")
U、V、W の方向に、それぞれがプログラム可能な振幅を持つコサイン波を生成します(周波数およびオフセットはテクスチャを再マッピングするベース シェーダを使って制御できます)。結果はグレースケール カラー(R=G=B=A)であり、カラーマップ ベース シェーダを使用して再マッピングできます。範囲が [o-s ... o+s] になるのは、振幅の合計を s、オフセットを o にした場合です。
color "mib_texture_wave" ( vector "coord", scalar "amplitude_x", scalar "amplitude_y", scalar "amplitude_z", scalar "offset")
Copyright © 1986, 2015 NVIDIA ARC GmbH. All rights reserved.