| Since | 18.5 |
vector filter_remap(vector2 uv, string filter, float width, ...)
この関数は、フィルタの重点サンプリングに基づいてUV座標をピクセルオフセットにマッピングします。
uv
0から1の範囲でコンポーネントを指定してください。
この関数は、これらの座標をフィルタのカーネル内のポイントにリマップし、もっと多くのポイントをウェイトの高い領域にマッピングします。
返されるポイントは、0を中心とした指定した‹width›のボックス内に収まります。
filter
使用するフィルタのタイプ。
"gauss"
Gaussianフィルタ
"box"
Boxフィルタ
"sinc"
Sincフィルタ
"mitchell"
Mitchellフィルタ
"bartlett"
Bartlettフィルタ(Coneフィルタ)
"blackman"
Blackmanフィルタ
"catrom"
Catmull-Romフィルタ
"hanning"
Hanningフィルタ
"point"
Pointフィルタ
width
フィルタ幅。
単位ボックスフィルタは、入力値を-0.5から0.5の範囲にマッピングします。
widthを2.0に変更すると、戻り値は-1.0から1.0の範囲になります。
例えばGaussianフィルタの場合は、widthに2.0の値を設定するのが適切です。
"res",
int
=32
Importance Sampling(重点的サンプリング)用のルックアップテーブルを構築する時、フィルタはこの解像度で放射状にサンプリングされます。
Returns
返されるベクトルのxとyのコンポーネントは、指定したUV座標が(0を中心とした)ピクセル座標にリマップされた値になります。
zコンポーネントは、返されるサンプルにおけるカーネルの近似ウェイトです。
一部のフィルタ("sinc", "mitchell", "catrom")では一部の領域でマイナスのウェイトを持つことに注意してください。
重点的サンプリングをする時、マイナス値を使用することができないので、このウェイトの絶対値を使用してください(absを使用してください)。
ただし、一部のアプリケーションでは、返されるサンプルのウェイトがマイナスになっているかどうかを知らせる必要があります。
| See also | |
| file | |
| map |