本文实例为大家分享了Unity shader实现顶点动画的具体代码,供大家参考,具体内容如下
需要了解的背景知识:
波动实例:y= Asin(ωx+φ)
φ:决定波形与X轴位置关系或横向移动距离(左加右减)
ω:决定周期(最小正周期T=2Π/|ω|)
A:决定峰值(纵向拉伸压缩的倍数)
顶点着色器的主要计算:
1.顶点位置
2.矩阵转换
片段着色器
1.纹理寻址
2.灯光作用
_Time表示时间周期 float4(t/20, t, t*2, t*3)
Shader "Custom/Wave" {
Properties {
_MainTex("Texture", 2D) = "white"{} //纹理
_Arange("Amplitute", float) = 1
_Frequency("Frequency", float) = 2//波动频率
_Speed("Speed",float) = 0.5//控制纹理移动的速度
}
SubShader
{
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex:POSITION;
float2 uv:TEXCOORD0;
};
struct v2f
{
float2 uv:TEXCOORD0;
float4 vertex:SV_POSITION;
};
float _Frequency;
float _Arange;
float _Speed;
v2f vert(appdata v)
{
v2f o;
float timer = _Time.y *_Speed;
//变化之前做一个波动 y= Asin(ωx+φ)
float waver = _Arange*sin(timer + v.vertex.x *_Frequency);
v.vertex.y = v.vertex.y + waver;
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
o.uv = v.uv;;
return o;
}
sampler2D _MainTex;
fixed4 frag(v2f i) :SV_Target
{
fixed4 col = tex2D(_MainTex, i.uv);
return col;
}
ENDCG
}
}
FallBack "Diffuse"
}
运行效果图如下:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍iOS 水波纹动画的实现效果,包括了iOS 水波纹动画的实现效果的使用技巧和注意事项,需要的朋友参考一下 本人最近在研究iOS动画,至于原理,我不在这里说了。毕竟这里的标题:水波纹的实现。 在这里,要学习水波纹的实现,首先要知道以下几点知识: 1.正弦函数:y = Asin(wx +b) + c。相信大家都比较熟悉。 2.CAShapeLayer的简单实用,相信看一下,就是知道其大概
本文向大家介绍iOS实现点赞动画特效,包括了iOS实现点赞动画特效的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了iOS实现点赞动画特效的具体代码,供大家参考,具体内容如下 动画的基本使用 动画的实现基本上是基于对View控件和View的layer属性进行操作,对视图进行移动,尺寸变换,透明度变换,旋转等一系列操作。 关键帧动画: 动画的实现可以分为两个部分,一部分是规定动画的变化内
本文向大家介绍Android 自定义view实现水波纹动画效果,包括了Android 自定义view实现水波纹动画效果的使用技巧和注意事项,需要的朋友参考一下 在实际的开发中,很多时候还会遇到相对比较复杂的需求,比如产品妹纸或UI妹纸在哪看了个让人兴奋的效果,兴致高昂的来找你,看了之后目的很明确,当然就是希望你能给她; 在这样的关键时候,身子板就一定得硬了,可千万别说不行,爷们儿怎么能说不行呢;
本文向大家介绍iOS实现抖音点赞动画效果,包括了iOS实现抖音点赞动画效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了iOS实现抖音点赞动画的具体代码,供大家参考,具体内容如下 1. 概述 最近看到抖音点赞爱心的动画效果比较好,出于好奇,自己也研究仿照动画效果写了一个,不喜欢的朋友可不要喷我噢!!! 话不多说,先来看一下执行效果。 2. 动画分析 上面的示例效果有点快,现在来看一
在这里,我们将动态画面简称为动画(animation)。正如动画片的原理一样,动画的本质是利用了人眼的视觉暂留特性,快速地变换画面,从而产生物体在运动的假象。而对于Three.js程序而言,动画的实现也是通过在每秒中多次重绘画面实现的。 为了衡量画面切换速度,引入了每秒帧数FPS(Frames Per Second)的概念,是指每秒画面重绘的次数。FPS越大,则动画效果越平滑,当FPS小于20时,
本文向大家介绍jQuery实现分章节锚点“回到顶部”动画特效代码,包括了jQuery实现分章节锚点“回到顶部”动画特效代码的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery实现分章节锚点“回到顶部”动画特效。分享给大家供大家参考,具体如下: 这里演示基于jquery实现的分章节动画实现“回到顶部”的效果,可通过 网页顶部的数字序号直接进入网页的章节,当处于第二章节的时候,网页右侧