🎡GLSL Step関数 ヘヴィサイドの階段関数 連続と離散のはざまで
ゼロか1を返すステップ関数
ミントンハウスのチャーリークリスチャンみたいだな。
ずっと数式は苦手に感じていたが、そんなに難しい話ではない。IF文一個あれば作れる。三項演算子でもよいが
GLSLにもstep関数がある
数式をテキスト形式で再度説明します。
Heavisideステップ関数 (H(x))
Heavisideステップ関数は、以下のように定義されます:
一般的な二値選択
任意の二つの値 �a と �b に対して、条件 �c が真(true)の場合は �a を、偽(false)の場合は �b を選択する式は以下のようになります:
If c then choose a, else choose b.
この選択は、条件演算子を使って以下のようにも表せます:
c?a:b
ここで、c は条件式で、この条件が真(true)の場合は a が選択され、偽(false)の場合は b が選択されます。
プログラミングにおける step 関数
GLSLの step 関数は、ある閾値に対して入力値がその閾値より小さいか大きいかに応じて0または1を返します。式は以下の通りです:
ここで、edge は閾値で、x は入力値です。
いいなと思ったら応援しよう!
お願い致します