UNITY3D shader代码例子<二> 双面显示





Shader "Custom/Texture" {

      Properties
      {
         _MainColor("Main Color",Color)=(1,1,1,1)
         _MainTexture("Main Texture",2D)="Write"{}
      }
      
      SubShader
      {   //因为要渲染带透明通道的贴图,所以渲染类型和队列都是Transparent
         Tags{"Queue"="Transparent" "RenderType"="Transparent" }
         //混合模式 Alpha值 1-Alpha值
         Blend SrcAlpha OneMinusSrcAlpha  
         //剔除 不剔除(正反面都显示)
         Cull off

         pass
         {
             CGPROGRAM
             #pragma vertex vert

             #pragma fragment frag

             #include "UnityCG.cginc"

             //将 Properties的类型和CG类型挂钩
             sampler2D _MainTexture;
             float4 _MainColor;
             struct v2f
             {
               float4 pos:POSITION;
               float4 uv:TEXCOORD;
             };
             v2f vert(appdata_base v)
             {
                v2f o;
                o.pos =mul(UNITY_MATRIX_MVP,v.vertex);
                o.uv=v.texcoord;
                return o;
             }
             half4 frag(v2f i):COLOR
             {  //tex2D函数(贴图采样,坐标)
                half4 c=tex2D(_MainTexture,i.uv)*_MainColor;
                return c;        
             }
             ENDCG     
         }
              
      }
     //如果显卡都达不到所有SubShader的要求,就回滚使用UNITY3D自带的shader
     FallBack"DIFFUSE"
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是重阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值