美文网首页Unity3D
Unity Shader 切换贴图 (贴图渐变)

Unity Shader 切换贴图 (贴图渐变)

作者: U3D界金城武 | 来源:发表于2017-04-25 17:01 被阅读1036次
    Shader "VrorangeShaders/Qiehuan" {
        Properties{
            _Color("Main Color", Color) = (1,1,1,1)
            _Texture0("Texture0 (RGB)", 2D) = "white" {}
        _Texture1("Texture1 (RGB)", 2D) = "white" {}
        _MixValue("MixValue (Range)",Range(0,1)) = 0.5
        }
            SubShader{
            Cull Back
            ZWrite On
            ZTest LEqual
            Tags{ "Queue" = "Geometry+0" "IgnoreProjector" = "False" "RenderType" = "Opaque" }
            CGPROGRAM
    #pragma surface surf Lambert  
    
            float4 _Color;
        sampler2D _Texture0;
        sampler2D _Texture1;
        float _MixValue;
    
        struct Input {
            float2 uv_Texture0;
            float2 uv_Texture1;
        };
    
        void surf(Input IN, inout SurfaceOutput o) {
            half4 c0 = tex2D(_Texture0, IN.uv_Texture0);
            half4 c1 = tex2D(_Texture1, IN.uv_Texture1);
            c0 = c0*_MixValue;
            c1 = c1*(1 - _MixValue);
            o.Albedo = (c0 + c1)*_Color;
        }
    
        ENDCG
        }
            FallBack "Diffuse"
    }
    

    c#代码

     this.GetComponent<Renderer>().material.SetFloat("_MixValue", v);
    

    相关文章

      网友评论

        本文标题:Unity Shader 切换贴图 (贴图渐变)

        本文链接:https://www.haomeiwen.com/subject/csgvzttx.html