// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' 
 | 
  
 | 
Shader "UI/TextFill" 
 | 
{ 
 | 
    Properties 
 | 
    { 
 | 
        _FillAmount("FillAmount" ,Range(0,1))=1 
 | 
        _Color ("Main Color", Color) = (1,1,1,1) 
 | 
        _MainTex ("Alpha (A)", 2D) = "white" {} 
 | 
         
 | 
        _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 
 | 
    } 
 | 
  
 | 
    SubShader 
 | 
    { 
 | 
        LOD 200 
 | 
  
 | 
        Tags 
 | 
        { 
 | 
            "Queue" = "Transparent" 
 | 
            "IgnoreProjector" = "True" 
 | 
            "RenderType" = "Transparent" 
 | 
            "PreviewType"="Plane" 
 | 
        } 
 | 
  
 | 
        Stencil 
 | 
        { 
 | 
            Ref [_Stencil] 
 | 
            Comp [_StencilComp] 
 | 
            Pass [_StencilOp]  
 | 
            ReadMask [_StencilReadMask] 
 | 
            WriteMask [_StencilWriteMask] 
 | 
        } 
 | 
  
 | 
        Cull Off 
 | 
        Lighting Off 
 | 
        ZWrite Off 
 | 
        ZTest [unity_GUIZTestMode] 
 | 
        Offset -1, -1 
 | 
        Fog { Mode Off } 
 | 
        Blend SrcAlpha OneMinusSrcAlpha 
 | 
        ColorMask [_ColorMask] 
 | 
  
 | 
        Pass 
 | 
        { 
 | 
            CGPROGRAM 
 | 
                #pragma vertex vert 
 | 
                #pragma fragment frag 
 | 
                #include "UnityCG.cginc" 
 | 
  
 | 
                struct appdata_t 
 | 
                { 
 | 
                    float4 vertex : POSITION; 
 | 
                    half4 color : COLOR; 
 | 
                    float2 texcoord : TEXCOORD0; 
 | 
                }; 
 | 
  
 | 
                struct v2f 
 | 
                { 
 | 
                    float4 vertex : POSITION; 
 | 
                    half4 color : COLOR; 
 | 
                    float2 texcoord : TEXCOORD0; 
 | 
                }; 
 | 
  
 | 
                sampler2D _MainTex; 
 | 
                float4 _MainTex_ST; 
 | 
                fixed4 _Color; 
 | 
                fixed _FillAmount; 
 | 
  
 | 
                v2f vert (appdata_t v) 
 | 
                { 
 | 
                    v2f o; 
 | 
                    o.vertex = UnityObjectToClipPos(v.vertex); 
 | 
                    o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex); 
 | 
                    o.color = v.color; 
 | 
#ifdef UNITY_HALF_TEXEL_OFFSET 
 | 
                    o.vertex.xy += (_ScreenParams.zw-1.0)*float2(-1,1); 
 | 
#endif 
 | 
                    o.color.a=clamp( sign( (_FillAmount*1.5-1)-o.vertex.x),0,1); 
 | 
                    return o; 
 | 
                } 
 | 
  
 | 
                half4 frag (v2f i) : COLOR 
 | 
                { 
 | 
                    half4 col = i.color; 
 | 
                    col.a *= tex2D(_MainTex, i.texcoord).a; 
 | 
                    col = col * _Color; 
 | 
             
 | 
                    clip (col.a - 0.01); 
 | 
                    return col; 
 | 
                } 
 | 
            ENDCG 
 | 
        } 
 | 
    } 
 | 
} 
 |