效果图
视频链接:https://live.csdn.net/v/201701
上传效果限制,可查看视频文件效果;
代码:
Shader "ShaderLearn/StarUniverse_UV"
{
Properties
{
_MainTex("MainTex",2D) = ""{
}
_A("A",float) = 1
_B("B",float) = 1
_T("T",float) = 0.1
}
SubShader
{
Tags{
"RenderType" = "Opaque" "Queue" = "Geometry"}
pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct v2f
{
float4 vertex : SV_POSITION;
float2 uv : TEXCOORD0;
};
sampler2D _MainTex;
float4 _MainTex_ST;
float _A;
float _B;
float _T;
v2f vert (appdata_base v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = TRANSFORM_TEX(v.texcoord,_MainTex);
return o;
}
fixed4 frag (v2f i) : SV_TARGET
{
float2 uv = i.uv;
float2 uv01 = uv + _A* sin(_B*uv.x + _Time.x*_T);
float2 uv02 = uv - _A* sin(_B*uv + _Time.y*_T);
fixed4 col = tex2D(_MainTex,i.uv) + tex2D(_MainTex,uv01) + tex2D(_MainTex,uv02);
return col/3;
}
ENDCG
}
}
}