1.正玄波形变换
v2f vert (appdata v)
{
v2f o;
//为了方便处理,在模型空间进行处理.
//按照公式y=Asin(ωx+φ)+k,对每个顶点的y方向做正玄波的处理,产生波纹效果
v.vertex.y += 0.2 * sin((v.vertex.x+v.vertex.z)+_Time.y);
o.vertex = UnityObjectToClipPos(v.vertex);
o.col = fixed4(v.vertex.y,v.vertex.y ,v.vertex.y ,1);
return o;
}
2.由中心向四周扩散波纹效果.
v2f vert (appdata v)
{
v2f o;
//同上,模型空间中进行处理,取模型上xz点到原点(0,0)的距离.
v.vertex.y += 0.3 * sin(-length(v.vertex.xz)*1.5f+_Time.y);
o.vertex = UnityObjectToClipPos(v.vertex);
o.col = fixed4(v.vertex.y,v.vertex.y ,v.vertex.y ,1);
return o;
}
3.旋转顶点
绕x-轴的主动旋转定义为:
<