「共通関数」の版間の差分
提供: Tommy6
細 |
細 |
||
36行: | 36行: | ||
{{!-}} | {{!-}} | ||
{{!}} [[smoothstep]] | {{!}} [[smoothstep]] | ||
− | {{!}} | + | {{!}} ''x'' <{{=}} ''edge0'' のときは 0.0 を、''x'' >{{=}} ''edge1'' のときは 1.0 を返します。''edge0'' < ''x'' < ''edge1'' のときは、0 と 1 の間でエルミート補間による滑らかな補間を行います。 |
{{!-}} | {{!-}} | ||
{{!}} [[sign]] | {{!}} [[sign]] |
2011年5月18日 (水) 17:13時点における版
共通関数はスカラもしくはベクトル引数をとります。
ベクトル版の整数関数では、演算はベクトルの要素ごとに行われます。それぞれの関数の解説は、各要素で行われる操作についてです。
共通関数は最近接偶数丸めモードを利用して実装しています。
関数の一覧
1.1 : OpenCL 1.1で追加・変更
関数 | 概要 |
---|---|
clamp | fmin(fmax(x, minval), maxval) を返します。 |
degrees | radians を度に変換します。つまり、(180/π) * radians を求めるということです。 |
max | x < y のときは y を、そうでないときは x を返します。 |
min | y < x のときは y を、そうでないときは x を返します。 |
mix | x + (y - x) * a による x と y の線形ブレンドを行います。 |
radians | degrees をラジアンに変換します。つまり、(π/180) * degrees を求めるということです。 |
step | x < edge のときは 0.0 を、そうでないときは 1.0 を返します。 |
smoothstep | x <= edge0 のときは 0.0 を、x >= edge1 のときは 1.0 を返します。edge0 < x < edge1 のときは、0 と 1 の間でエルミート補間による滑らかな補間を行います。 |
sign |
変更記録
―――― Version 1.1, The OpenCL Specification
より翻訳