• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            l

            成都手游碼農一枚
            隨筆 - 32, 文章 - 0, 評論 - 117, 引用 - 0
            數據加載中……

            [Unity]UGUI流光材質shader

            關鍵部分的UV偏移算法:參數自己調吧
            OUT.texcoord1 = half2(IN.texcoord.x - fmod(_Time.x * 5, 1) + 0.5, IN.texcoord.y);
            Shader "Effect/SimpleImageRGBWithAlpha2"
            {
                Properties
                
            {
                    [PerRendererData] _MainTex (
            "Sprite Texture", 2D) = "white" {}
                    _Color (
            "Tint", Color) = (1,1,1,1)
                    
                    _StencilComp (
            "Stencil Comparison", Float) = 8
                    _Stencil (
            "Stencil ID", Float) = 0
                    _StencilOp (
            "Stencil Operation", Float) = 0
                    _StencilWriteMask (
            "Stencil Write Mask", Float) = 255
                    _StencilReadMask (
            "Stencil Read Mask", Float) = 255

                    _ColorMask (
            "Color Mask", Float) = 15
                    _AlphaTex (
            "Alpha Texture", 2D) = "white" {}
                    _LightTex (
            "Light Texture", 2D) = "white" {}

                    _Scale (
            "Scale", Float) = 256
                }


                SubShader
                
            {
                    Tags
                    

                        
            "Queue"="Transparent" 
                        
            "IgnoreProjector"="True" 
                        
            "RenderType"="Transparent" 
                        
            "PreviewType"="Plane"
                        
            "CanUseSpriteAtlas"="True"
                    }

                    
                    Stencil
                    
            {
                        Ref [_Stencil]
                        Comp [_StencilComp]
                        Pass [_StencilOp] 
                        ReadMask [_StencilReadMask]
                        WriteMask [_StencilWriteMask]
                    }


                    Cull Off
                    Lighting Off
                    ZWrite Off
                    ZTest [unity_GUIZTestMode]
                    Blend SrcAlpha OneMinusSrcAlpha
                    ColorMask [_ColorMask]

                    Pass
                    
            {
                    CGPROGRAM
                        #pragma vertex vert
                        #pragma fragment frag
                        #include 
            "UnityCG.cginc"

                        
            struct appdata_t
                        
            {
                            float4 vertex   : POSITION;
                            float4 color    : COLOR;
                            float2 texcoord : TEXCOORD0;
                        }
            ;

                        
            struct v2f
                        
            {
                            float4 vertex   : SV_POSITION;
                            fixed4 color    : COLOR;
                            half2 texcoord0  : TEXCOORD0;
                            half2 texcoord1  : TEXCOORD1;
                        }
            ;
                        
                        fixed4 _Color;

                        v2f vert(appdata_t IN)
                        
            {
                            v2f OUT;
                            OUT.vertex 
            = mul(UNITY_MATRIX_MVP, IN.vertex);
                            OUT.texcoord0 
            = IN.texcoord;
                            OUT.texcoord1 
            = half2(IN.texcoord.x - fmod(_Time.x * 51+ 0.5, IN.texcoord.y);
            #ifdef UNITY_HALF_TEXEL_OFFSET
                            OUT.vertex.xy 
            += (_ScreenParams.zw-1.0)*float2(-1,1);
            #endif
                            OUT.color 
            = IN.color * _Color;
                            
            return OUT;
                        }


                        sampler2D _MainTex;
                        sampler2D _AlphaTex;
                        sampler2D _LightTex;

                        fixed4 frag(v2f IN) : SV_Target
                        
            {
                            half4 color 
            = half4(tex2D(_MainTex, IN.texcoord0).rgb, tex2D(_AlphaTex, IN.texcoord0).r) * IN.color;
                            color.rgb 
            *= tex2D(_LightTex, IN.texcoord1).r + 1;

                            
            // TODO why ?
                            
            //clip (color.a - 0.01);

                            
            return color;
                        }

                    ENDCG
                    }

                }

            }





            posted on 2016-01-22 14:13 l1989 閱讀(3205) 評論(0)  編輯 收藏 引用 所屬分類: 游戲

            国产精品va久久久久久久| 亚洲七七久久精品中文国产| 亚洲国产精品狼友中文久久久 | 久久精品人人做人人爽电影 | 久久这里只有精品久久| 久久久无码精品午夜| 精品无码久久久久久午夜| 午夜视频久久久久一区| 久久久久国产精品| 色婷婷综合久久久久中文 | 久久久久人妻一区精品性色av| 精品久久人人爽天天玩人人妻 | 国产精品熟女福利久久AV| 久久精品国产亚洲AV嫖农村妇女 | 久久国产热精品波多野结衣AV| 久久精品国产精品亚洲下载| 97久久精品无码一区二区| 久久AV无码精品人妻糸列| 无码人妻久久一区二区三区蜜桃| 好属妞这里只有精品久久| 天天躁日日躁狠狠久久| 国产精品久久久久久五月尺| 久久久久香蕉视频| 久久www免费人成精品香蕉| 久久国产免费观看精品| 国产成人精品久久二区二区| 久久精品无码专区免费东京热| 久久久无码精品亚洲日韩蜜臀浪潮 | 99久久人妻无码精品系列蜜桃| 人人狠狠综合久久88成人| 久久人人爽人人爽人人片AV东京热| 精品水蜜桃久久久久久久| 99久久综合狠狠综合久久| 精品久久久无码中文字幕| 久久亚洲2019中文字幕| 青青热久久国产久精品| 久久久久亚洲AV片无码下载蜜桃| 久久99久国产麻精品66| 久久国产免费观看精品3| 91精品国产91热久久久久福利 | 久久精品国产亚洲AV无码娇色 |