| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 | 
							- // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'
 
- // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
 
- Shader "FairyGUI/BMFont"
 
- {
 
-     Properties
 
-     {
 
-         _MainTex ("Base (RGB), Alpha (A)", 2D) = "black" {}
 
-         _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
 
-         _BlendSrcFactor ("Blend SrcFactor", Float) = 5
 
-         _BlendDstFactor ("Blend DstFactor", Float) = 10
 
-     }
 
-     SubShader
 
-     {
 
-         LOD 100
 
-         Tags
 
-         {
 
-             "Queue" = "Transparent"
 
-             "IgnoreProjector" = "True"
 
-             "RenderType" = "Transparent"
 
-         }
 
-         Stencil
 
-         {
 
-             Ref [_Stencil]
 
-             Comp [_StencilComp]
 
-             Pass [_StencilOp] 
 
-             ReadMask [_StencilReadMask]
 
-             WriteMask [_StencilWriteMask]
 
-         }
 
-         Cull Off
 
-         Lighting Off
 
-         ZWrite Off
 
-         Fog { Mode Off }
 
-         Blend [_BlendSrcFactor] [_BlendDstFactor]
 
-         ColorMask [_ColorMask]
 
-         Pass
 
-         {
 
-             CGPROGRAM
 
-                 #pragma multi_compile NOT_GRAYED GRAYED
 
-                 #pragma multi_compile NOT_CLIPPED CLIPPED SOFT_CLIPPED
 
-                 #pragma vertex vert
 
-                 #pragma fragment frag
 
-                 #pragma exclude_renderers d3d9 opengl flash
 
-                 #include "UnityCG.cginc"
 
-                 struct appdata_t
 
-                 {
 
-                     float4 vertex : POSITION;
 
-                     fixed4 color : COLOR;
 
-                     float4 texcoord : TEXCOORD0;
 
-                 };
 
-                 struct v2f
 
-                 {
 
-                     float4 vertex : SV_POSITION;
 
-                     fixed4 color : COLOR;
 
-                     float4 texcoord : TEXCOORD0;
 
-                     #ifdef CLIPPED
 
-                     float2 clipPos : TEXCOORD1;
 
-                     #endif
 
-                     #ifdef SOFT_CLIPPED
 
-                     float2 clipPos : TEXCOORD1;
 
-                     #endif
 
-                 };
 
-                 sampler2D _MainTex;
 
-                 CBUFFER_START(UnityPerMaterial)
 
-                 #ifdef CLIPPED
 
-                 float4 _ClipBox = float4(-2, -2, 0, 0);
 
-                 #endif
 
-                 #ifdef SOFT_CLIPPED
 
-                 float4 _ClipBox = float4(-2, -2, 0, 0);
 
-                 float4 _ClipSoftness = float4(0, 0, 0, 0);
 
-                 #endif
 
-                 CBUFFER_END
 
-                 v2f vert (appdata_t v)
 
-                 {
 
-                     v2f o;
 
-                     o.vertex = UnityObjectToClipPos(v.vertex);
 
-                     o.texcoord = v.texcoord;
 
-                     #if !defined(UNITY_COLORSPACE_GAMMA) && (UNITY_VERSION >= 550)
 
-                     o.color.rgb = GammaToLinearSpace(v.color.rgb);
 
-                     o.color.a = v.color.a;
 
-                     #else
 
-                     o.color = v.color;
 
-                     #endif
 
-                     #ifdef CLIPPED
 
-                     o.clipPos = mul(unity_ObjectToWorld, v.vertex).xy * _ClipBox.zw + _ClipBox.xy;
 
-                     #endif
 
-                     #ifdef SOFT_CLIPPED
 
-                     o.clipPos = mul(unity_ObjectToWorld, v.vertex).xy * _ClipBox.zw + _ClipBox.xy;
 
-                     #endif
 
-                     return o;
 
-                 }
 
-                 fixed4 frag (v2f i) : SV_Target
 
-                 {
 
-                     fixed4 col = i.color;
 
-                     fixed4 tcol = tex2D(_MainTex, i.texcoord);
 
-                     col.a *= tcol[i.texcoord.z];//z stores channel
 
-                     #ifdef GRAYED
 
-                     fixed grey = dot(col.rgb, fixed3(0.299, 0.587, 0.114));
 
-                     col.rgb = fixed3(grey, grey, grey);
 
-                     #endif
 
-                     #ifdef SOFT_CLIPPED
 
-                     float2 factor = float2(0,0);
 
-                     if(i.clipPos.x<0)
 
-                         factor.x = (1.0-abs(i.clipPos.x)) * _ClipSoftness.x;
 
-                     else
 
-                         factor.x = (1.0-i.clipPos.x) * _ClipSoftness.z;
 
-                     if(i.clipPos.y<0)
 
-                         factor.y = (1.0-abs(i.clipPos.y)) * _ClipSoftness.w;
 
-                     else
 
-                         factor.y = (1.0-i.clipPos.y) * _ClipSoftness.y;
 
-                     col.a *= clamp(min(factor.x, factor.y), 0.0, 1.0);
 
-                     #endif
 
-                     #ifdef CLIPPED
 
-                     float2 factor = abs(i.clipPos);
 
-                     col.a *= step(max(factor.x, factor.y), 1);
 
-                     #endif
 
-                     return col;
 
-                 }
 
-             ENDCG
 
-         }
 
-     }
 
-     Fallback "FairyGUI/Text"
 
- }
 
 
  |