Unityのシェーダで0~1の値の強度をpow()を使わずに変換する方法です。 やりたいこと pow()より直感的に調整できる関数 Unity2019.2.10 やりたいこと いま、シェーダで0~1を取る値があるとします。 これを、何らかの関数を用いて非線形の値に変換することを考えます。 このような場合、シェーダではよくpow関数を使います。 float dst = pow(src, x); この形式はフォン反射などでも使われます。 ただ、この計算式は入力値がマイナスであるほど結果が大きくなったりピーキーな部分があったりとイマイチ直感的ではありません。 特に入力値をマテリアルプロパティとして外から見えるように実装する場合にはもっと直感的な調整を可能にするべきです。 そこで本記事ではもう少し直感的な関数を作ってみます。 pow()より直感的に調整できる関数 前節の課題を解消するため、dst