64 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| Shader "Unlit/UI_Scroll"
 | |
| {
 | |
|     Properties
 | |
|     {
 | |
|         _MainTex("MainTex", 2D) = "white" {}    // 纹理    
 | |
|         _ScrollX("ScrollX",Float) = 1.0// X滚动速度
 | |
|         _ScrollY("ScrollY",Float) = 1.0// Y滚动速度
 | |
| 
 | |
|     }
 | |
|         SubShader
 | |
|     {
 | |
|         Tags{ "RenderType" = "Opaque" "Queue" = "Geometry" }
 | |
|         LOD 100
 | |
| 
 | |
|         Pass
 | |
|     {
 | |
|         Tags{ "LightMode" = "ForwardBase" }
 | |
|         CGPROGRAM
 | |
| #pragma vertex vert
 | |
| #pragma fragment frag
 | |
| 
 | |
| 
 | |
| #include "UnityCG.cginc"
 | |
| 
 | |
|         struct a2v
 | |
|     {
 | |
|         float4 vertex : POSITION;
 | |
|         float2 texcoord : TEXCOORD0;
 | |
|     };
 | |
| 
 | |
|     struct v2f
 | |
|     {
 | |
|         float4 pos : SV_POSITION;
 | |
|         float2 uv : TEXCOORD0;
 | |
|     };
 | |
| 
 | |
|     sampler2D _MainTex;
 | |
|     float4 _MainTex_ST;
 | |
|     float _ScrollX;
 | |
|     float _ScrollY;
 | |
| 
 | |
|     v2f vert(a2v v)
 | |
|     {
 | |
|         v2f o;
 | |
|         o.pos = UnityObjectToClipPos(v.vertex);
 | |
| 
 | |
|         o.uv.xy = TRANSFORM_TEX(v.texcoord, _MainTex) + frac(float2 (_ScrollX, _ScrollY) * _Time.y);
 | |
| 
 | |
|         return o;
 | |
|     }
 | |
| 
 | |
|     fixed4 frag(v2f i) : SV_Target
 | |
|     {
 | |
| 
 | |
|         fixed4 c = tex2D(_MainTex, i.uv.xy);
 | |
| 
 | |
|     return c;
 | |
|     }
 | |
|         ENDCG
 | |
|     }
 | |
|     }
 | |
|         FallBack "VertexLit"
 | |
| }
 |