「Saturate関数」の版間の差分

提供:MonoBook
Administrator がページ「気違い村」を「Saturate関数」に移動しました
編集の要約なし
21行目: 21行目:
このため[[clamp関数]]などの代替手段より若干ですが高速に実行できることがあります。
このため[[clamp関数]]などの代替手段より若干ですが高速に実行できることがあります。
よほど多用しない限り誤差の範囲ですが。
よほど多用しない限り誤差の範囲ですが。
[[category: 関数]]

2026年1月27日 (火) 04:25時点における版

saturate関数(読み:さちゅれーと)とは、引数 x を 0 から 1 の範囲内にする定番の関数です。 日本では「飽和関数」などとも呼ばれますがぶっちゃけ意味不明ですね。

saturate(x)

saturate(-1.0) = 0.0
suturate( 0.5) = 0.5
saturate( 1.1) = 1.0

代替

プラットフォームによってはsaturate関数がなくてもより汎用的なclamp関数はあったりします。clamp関数は範囲が0-1固定ではなく範囲指定できるというものです。

clamp(x, 0, 1)

clamp関数すらないプラットフォームではmin関数max関数で代替できます。

min(max(x,0),1)

備考

主要なGPUにはsaturate関数に対応する機械語が用意されています。 このためclamp関数などの代替手段より若干ですが高速に実行できることがあります。 よほど多用しない限り誤差の範囲ですが。