Newer
Older
Dreamsturbia-Project-IADE-Unity3D / Assets / Shaders / BridgeShader.shader
Shader "Dreamsturbia/BridgeShader"
{
    Properties{
        _Color("Color",Color) = (1,1,1,1)
        _MainTex("Texture", 2D) = "white"{}
        _NoiseTex("Noise Texture", 2D) = "white"{}
        _DissolveThreshold("Dissolve Threshold", Range(0, 1)) = 0.5

    }
        SubShader{
            Pass{
                HLSLPROGRAM
                #pragma vertex MyVertexProgram
                #pragma fragment MyFragmentProgram

                #include "UnityCG.cginc"

                struct VertexData {
                    float4 position : POSITION;
                    float2 uv : TEXCOORD0;
                };

                struct VertexToFragment {
                    float4 position : SV_POSITION;
                    float2 uv : TEXCOORD0;
                    float2 uvNoise : TEXCOORD1;
                };

                sampler2D _MainTex;
                sampler2D _NoiseTex;
                float4 _Color;
                float4 _MainTex_ST;
                float4 _NoiseTex_ST;
                float _Intensity;
                float _DissolveThreshold;

                VertexToFragment MyVertexProgram(VertexData vertex)
                {
                    VertexToFragment v2f;
                    v2f.position = UnityObjectToClipPos(vertex.position);

                    v2f.uv = vertex.uv * _MainTex_ST.xy + _MainTex_ST.zw;
                    
                    v2f.uvNoise = vertex.uv * _NoiseTex_ST.xy + _NoiseTex_ST.zw;

                    return v2f;
                }

                float4 MyFragmentProgram(VertexToFragment v2f) : SV_TARGET
                {
                   // float4 color = tex2D(_MainTex, v2f.uv);
                  //  float4 noise = tex2D(_NoiseTex, v2f.uvNoise + _Time.x);
//                    color += sin((_Time.y * 1) + (color * 1)) * 1;
                 //   clip(noise.rgb - _DissolveThreshold);
                  //  float finalColor = color * noise;
                    //clip(noise.rgb - _DissolveThreshold);
                   
                    float _Blend1 = 0.4f;
                    float4 mainCol = tex2D(_MainTex, v2f.uv - _Time.x);
                    float4 texTwoCol = tex2D(_NoiseTex, v2f.uvNoise + _Time.x);
                    fixed4 output = lerp(mainCol, texTwoCol, _Blend1);



                    return output * _Color;
                }
            ENDHLSL
        }
        }
}