星空背景 shader实现版本 3D空间感

Properties
    {
         _MainTex("MainTex",2d)=""{}
        _T("T",range(0,10)) = 2
        _A("A",range(0,5))=0.5
    }

    SubShader{
        
        pass
    {
    
        
            CGPROGRAM
          #pragma vertex vert
          #pragma fragment frag
          #include "unitycg.cginc"
          #include "Lighting.cginc"

          sampler2D _MainTex;
            float _T;
            float _A;
        struct v2f
    {
        float4 pos:POSITION;
        float2 uv:TEXCOORD0;
     };

    v2f vert(appdata_base b)
    {
        v2f o;

        o.pos = UnityObjectToClipPos(b.vertex);
        o.uv = b.texcoord.xy;
        
        return o;
    }

    fixed4 frag(v2f IN) :COLOR
    {
      
    float2 uv = IN.uv;
     
    float offset_uv = _A*sin(IN.uv*_T + _Time.x);

    uv += offset_uv;
    fixed4 col1 = tex2D(_MainTex, uv);

    uv = IN.uv;
    uv -= offset_uv;
    fixed4 col2 = tex2D(_MainTex, uv);

     return (col1+col2)/2;
    }
        
        ENDCG

    
        }


    
    }

你可能感兴趣的:(Shader)