タグ

blackとWebGLに関するedo_m18のブックマーク (1)

  • 条件分岐のためにstep関数を使う時の考え方をまとめてみた - Qiita

    GLSLでは条件分岐をする際にif/else構文を使うと処理負荷が高いと言われています。 (その分だけ暖を取りやすくなるかもしれませんが・・・?) そこで、最初に考えつく代替案は三項演算子ではないでしょうか? vec3 BLACK = vec3(0.0); vec3 WHITE = vec3(1.0); vec3 color; // こんなif文は、 if (x < 0.5) { color = WHITE; } else { color = BLACK; } // こんな三項演算子に置き換える color = (x < 0.5) ? WHITE : BLACK; こんな感じでif/else構文を避けていくわけですが、この方法の欠点はベクトルを一度に条件分岐することができない事です。 ですが、step関数とmix関数を使うとベクトルの要素ごとに条件分岐をしてその結果をベクトルに直接反映させ

    条件分岐のためにstep関数を使う時の考え方をまとめてみた - Qiita
    edo_m18
    edo_m18 2016/12/17
    これはいい記事。色々使えそう。
  • 1