博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Cg入门24: Fragment shader – UV动画(波纹)
阅读量:2201 次
发布时间:2019-05-03

本文共 1003 字,大约阅读时间需要 3 分钟。

效果:

源代码:

Shader "Sbin/FragmentAnimShader"{	Properties	{		_MainTex ("Texture", 2D) = "white" {}		_F("F",Range(1,30))=10		_A("A",Range(0,0.1))=0.01		_R("R",Range(0,1))=0	}	SubShader	{		Pass		{			CGPROGRAM			#pragma vertex vert			#pragma fragment frag			#include "UnityCG.cginc"			sampler2D _MainTex;			float _F;//控制速度 			float _A;//控制幅度			float _R;//控制半径 			struct v2f{				float4 pos:POSITION;				float2 uv:TEXCOORD0;			};			v2f vert (appdata_base v)			{				v2f o;				o.pos = mul(UNITY_MATRIX_MVP, v.vertex);				o.uv = v.texcoord.xy;				return o;			}			fixed4 frag (v2f v) : COLOR			{				//移动效果				//v.uv +=_Time.x;				//波纹效果				//v.uv += _A*sin(v.uv*3.14*_F + _Time.y);				//点击波纹效果				float2 uv = v.uv;				float dis = distance(uv,float2(0.5,0.5));//距离中心点位置				float scale=0;				//if(dis<_R)				{					_A *=saturate(1-dis/_R);					scale = _A*sin(-dis*3.14*_F + _Time.y);					uv =uv + uv*scale;				}				fixed4 col = tex2D(_MainTex, uv) + fixed4(1,1,1,1)*saturate(scale)*100;				return col;			}			ENDCG		}	}}

你可能感兴趣的文章
为什么要用交叉验证
查看>>
用学习曲线 learning curve 来判别过拟合问题
查看>>
用验证曲线 validation curve 选择超参数
查看>>
用 Grid Search 对 SVM 进行调参
查看>>
用 Pipeline 将训练集参数重复应用到测试集
查看>>
PCA 的数学原理和可视化效果
查看>>
机器学习中常用评估指标汇总
查看>>
什么是 ROC AUC
查看>>
Bagging 简述
查看>>
详解 Stacking 的 python 实现
查看>>
简述极大似然估计
查看>>
用线性判别分析 LDA 降维
查看>>
用 Doc2Vec 得到文档/段落/句子的向量表达
查看>>
使聊天机器人具有个性
查看>>
使聊天机器人的对话更有营养
查看>>
一个 tflearn 情感分析小例子
查看>>
attention 机制入门
查看>>
手把手用 IntelliJ IDEA 和 SBT 创建 scala 项目
查看>>
GAN 的 keras 实现
查看>>
AI 在 marketing 上的应用
查看>>