pudding81 2024. 2. 16. 17:23

Shader "Custom/Lerp"
{
    Properties
    {
         _Slider("Slider",Range(0,1))=0
        _Grass ("Grass", 2D) = "white" {}
        _Sand ("Sand", 2D) = "white" {}
       _BrightDarkness("Bright Darkness",Range(-1,1))=0 
    }
    SubShader
    {
        Tags { "RenderType"="Opaque" }
        

        CGPROGRAM
       
        #pragma surface surf Standard fullforwardshadows

        
        #pragma target 3.0

        sampler2D _Grass;
        sampler2D _Sand;
        float _Slider;
        float _BrightDarkness;
        struct Input
        {
            float2 uv_Grass;
            float2 uv_Sand;

        };

       

        void surf (Input IN, inout SurfaceOutputStandard o)
        {
          
            fixed4 grass = tex2D (_Grass, IN.uv_Grass);
            fixed4 sand = tex2D (_Sand, IN.uv_Sand);

            //float4 e =lerp(grass,sand,_Slider);// 텍스쳐 2장 슬라이더로 조절하기
           
            float3 g= (grass.r+grass.g+grass.b)/3+_BrightDarkness; //흑백 밝기 조절하기
            float3 e =lerp(g,sand,1-grass.a);// 알파함수 이용 (sand,g,grass.a)
            
            
            o.Emission =e;


        }
        ENDCG
    }
    FallBack "Diffuse"
}