yu00’s blog

プログラミングに関する備忘録です

Unity FragmentShader 図形に色を付ける

Unity Shader Lab入門

UnityのFragment Shaderで
図形に色を付ける方法を説明します。

色を付けるにはlerp関数を使います。
引数には黒に対応する色と、白に対応する色と、白黒の図形を渡します。

Properties
{
    _Color1 ("Color1", Color) = (1,1,1,1) // 黒の色
    _Color2 ("Color2", Color) = (1,1,1,1) // 白の色
}
...
fixed4 frag (v2f i) : SV_Target
{
    float mask;
    Ellipse(i.uv, 1, 1, mask); // 白黒の図形を描画
    return lerp(_Color1, _Color2, mask);
}

バージョン

  • Unity : 2022.3.22f1