Shader实例:2D流光
准备:
1.一张背景图
2.一张流光图
3.一张过滤图
like this:

效果:

代码:
Shader "Custom/2d_flow"
{
Properties
{
_MainTex("main tex",2d) = ""{}//主贴图
_FlowTex("flow tex",2d) = ""{}//流光图
_MaskTex("mask tex",2d) = ""{}//过滤图
_FlowSpeed("speed", Range(,)) = 1.0//流光移动速度
} SubShader
{
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include"UnityCG.cginc" sampler2D _MainTex;
sampler2D _FlowTex;
sampler2D _MaskTex;
float _FlowSpeed; struct v2f
{
float4 vertex:POSITION;
float4 uv:TEXCOORD0;
}; v2f vert(appdata_base v)
{
v2f o;
o.vertex = mul(UNITY_MATRIX_MVP, v.vertex);
o.uv = v.texcoord;
return o;
} half4 frag(v2f IN):COLOR
{
//采样主贴图
half4 c = tex2D(_MainTex,IN.uv); //流光uv移动
half2 flow_uv = half2(IN.uv.x / ,IN.uv.y);
flow_uv.x += -_FlowSpeed * _Time.w;
half4 flow = tex2D(_FlowTex, flow_uv);
flow.rgb *= half3(,,); //根据过滤图的alpha值,将流光效果限制在文字上
half4 mask = tex2D(_MaskTex,IN.uv);
if (mask.a == )
{
c.rgb /= 1.5;
c.rgb += flow.rgb;
}
return c;
}
ENDCG
}
}
FallBack "Diffuse"
}
主要就是uv移动,颜色混合。
- 本文固定链接: http://www.shihuanjue.com/?p=266
- 转载请注明: 乔 2016年01月03日 于 是幻觉 发表
Shader实例:2D流光的更多相关文章
- Shader实例:NGUI制作网格样式血条
效果: 思路: 1.算出正确的uv去采样过滤图,上一篇文章说的很明白了.Shader实例:NGUI图集中的UISprite正确使用Shader的方法 2.用当前血量占总血量的百分比来设置shader中 ...
- 【OpenGL】Shader实例分析(七)- 雪花飘落效果
转发请保持地址:http://blog.csdn.net/stalendp/article/details/40624603 研究了一个雪花飘落效果.感觉挺不错的.分享给大家,效果例如以下: 代码例如 ...
- Shader实例:NGUI图集中的UISprite正确使用Shader的方法
效果: 变灰,过滤,流光 都是UI上常用效果. 比如: 1.按钮禁用时,变灰. 2.一张Icon要应付圆形背景框,又要应付矩形背景框.就要使用过滤的方式来裁剪. 避免了美术提供两张icon的麻烦,又节 ...
- 关于Unity中顶点片元Shader实例
补充 float4 fixed4 _Time 1: float4是内置向量 (x, y, z, w); float4 a; 访问单独成员a.x, a.y, a.z, a.w;2: fixed4 是内置 ...
- Shader实例:序列帧动画
效果: 序列帧图片网上随便找的,质量不是很好,重点不是它,不要在意. 思路: 1.之前都是在一张面片上直接映射一张纹理,IN.uv的范围是0~1 现在要映射一张纹理上的一小块区域,就要用这块区域的uv ...
- Shader实例:溶解效果(Dissolve)
效果: 图左:一道金光闪过,瞬间灰飞烟灭 图右:燃烧效果,先过渡到黄色,然后渐渐过渡到黑色,最后消失殆尽. 这是游戏中常见的效果,各位可以想想自己玩过的游戏. 手头正在玩的,梦三国手游,死亡的时候就是 ...
- Shader实例:扭曲,漩涡
效果: 案例:新仙剑,王者之剑. 在切换场景的时候,就会有这样的全屏扭曲效果. 思路: 1.用GrabPass抓屏到一张纹理中. 2.进行扭曲,绘制到UGUI的Image上. 准备: 去官网下载Uni ...
- Shader实例:边缘发光和描边
效果图: 1.边缘发光 思路:用视方向和法线方向点乘,模型越边缘的地方,它的法线和视方向越接近90度.点乘越接近0 那么用 1-减去上面点乘的结果,来作为颜色分量,来反映边缘颜色强弱. Shader ...
- Shader实例:一台旧电视
准备: 1.一段小视频 2.一张电视机贴图 3.一张过滤图 效果: 让视频内容只在电视机屏幕区域显示 Shader代码:有注释 Shader "Joe/old_tv" { Prop ...
随机推荐
- ecshop 导出exl表格
// 导出订单 if(isset($_POST['export'])){ // 统计金额 $sl = "SELECT SUM(goods_amount) as total from" ...
- 深入理解redis持久化
持久化方式: 快照(RDB)方式,默认方式,文件以二进制方式保存到RDB文件. 文件追加(AOF)方式,文件以协议文本的方式write到AOF文件. 作用,重启后的数据恢复.当两种方式都启用时,red ...
- 深入理解javascript原型和闭包(1)——一切都是对象
“一切都是对象”这句话的重点在于如何去理解“对象”这个概念. ——当然,也不是所有的都是对象,值类型就不是对象. 首先咱们还是先看看javascript中一个常用的函数——typeof().typeo ...
- 深入理解javascript原型和闭包(15)——闭包
前面提到的上下文环境和作用域的知识,除了了解这些知识之外,还是理解闭包的基础. 至于“闭包”这个词的概念的文字描述,确实不好解释,我看过很多遍,但是现在还是记不住. 但是你只需要知道应用的两种情况即可 ...
- Qt、VTK配置常见问题
QVTKWidget undefined reference to 问题,一定要在pro文件中添加库 libvtkGUISupportQt-6.3. 2. CMAKE_MAKE_PROGRAM ...
- 关于session和cookie
一.cookie机制和session机制的区别 **************************************************************************** ...
- POJ 2478 Farey Sequence
名字是法雷数列其实是欧拉phi函数 Farey Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submi ...
- java生产者/消费者模式实现——一生产者一消费者(操作值)
胶多不粘话多不甜,直接上代码: 生产者类: /** * Created by 51304 on 2016/2/28. */ public class P { private String lock; ...
- jQuery如何给body绑定事件?
jQuery如何给body绑定事件? 代码如下: $(document).bind("resize", function () { alert("php-note.com ...
- 如何使用JS来检测游览器是什么类型,或android是什么版本号- 转载
var brower = { versions:function(){ var u = window.navigator.userAgent; var num ; if(u.indexOf('Trid ...