码迷,mamicode.com
首页 > 其他好文 > 详细

SimpleReflection

时间:2014-11-14 13:56:41      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   ar   os   sp   strong   div   

SimpleReflection

  取法线的x、y作为reflection-map的uv。

Shader "Custom/SimpleReflection" 
{
    Properties 
    {
        _MainTex ("Base (RGB)", 2D) = "White" {}
        _ReflectionMap ("ReflectionMap", 2D) = "White" {}
    }
    
   SubShader  
   { 
          Lod 100
          Tags { "Queue" = "Transparent"}
        Pass  
        { 
            Blend SrcAlpha OneMinusSrcAlpha 
            CGPROGRAM 
      
            #pragma vertex Vert 
            #pragma fragment Frag 
            #include "UnityCG.cginc" 
            
            sampler2D _MainTex;
            sampler2D _ReflectionMap;
          
            struct V2F 
            { 
                fixed4 pos:SV_POSITION; 
                fixed2 uv:TEXCOORD0; 
                fixed2 uv2:TEXCOORD1; 
            }; 
                
          
            V2F Vert(appdata_full v)
            {
                V2F output;
                output.pos = mul (UNITY_MATRIX_MVP, v.vertex);
                output.uv = v.texcoord;
                output.uv2 = mul(UNITY_MATRIX_IT_MV, float4(v.normal, 0)).xy/2+0.5;
                return output;
            }

            half4 Frag(V2F i):COLOR
            {
                return tex2D(_MainTex,i.uv) + tex2D(_ReflectionMap,i.uv2);
            }

            ENDCG 
        } 
   } 
    
    FallBack "VertexLit"
}

 

SimpleReflection

标签:style   blog   io   color   ar   os   sp   strong   div   

原文地址:http://www.cnblogs.com/tekkaman/p/4096958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!