宝可梦游戏在进入战斗前会有类似这样转场动画。

例子中使用的纹理质量较差,边缘比较模糊,和shader无关。

这个UI是盖在所有UI最前面的。可以使用shader来完成这个工作,而不是复杂的动画。

使用一张这样的灰度图,用动画控制cutoff值来决定产生遮罩的像素从而产生动画。

Shader 代码如下:

Shader "UI/UITransitions"
{// 通过材质可以控制的变量,使用inspector设置Properties{_MainTex("Texture", 2D) = "white" {}_TransitionTex("Transition Texture", 2D) = "white" {}_Color("Screen Color", Color) = (1,1,1,1)_Cutoff("Cutoff", Range(0, 1)) = 0_Fade("Fade", Range(0, 1)) = 0}// 对应多个变体。如:一个subshader给pc用,另一个给手机用SubShader{// 不剪切背表面、不写z、ztest永远通过Cull Off ZWrite Off ZTest Always// 每个pass会渲染一次物体。如:一个pass处理平行光,再加一个处理点光Pass{// Unity的HLSL开始的地方,ENDCGCGPROGRAM#pragma vertex vert#pragma fragment frag#include "UnityCG.cginc"// semantic 指明值怎么用,如:TEXCOORD0在ps中会得到插值struct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;};// SV_POSITION SV_ ( system value )struct v2f{float4 vertex : SV_POSITION;float2 uv : TEXCOORD0;float2 uv1 : TEXCOORD1;};float4 _MainTex_TexelSize;// 每顶点处理v2f vert(appdata v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.uv = v.uv;o.uv1 = v.uv;// 统一dx和gl对于uv的取值方式// _TexelSize: https://docs.unity3d.com/Manual/SL-PlatformDifferences.html#if UNITY_UV_STARTS_AT_TOPif (_MainTex_TexelSize.y < 0)o.uv1.y = 1 - o.uv1.y;#endifreturn o;}// 对应Properties中的名称,才可以使用sampler2D _MainTex;sampler2D _TransitionTex;fixed4 _Color;float _Cutoff;float _Fade;// 每像素处理// 需要指定 SV_Target(也就是frame buffer屏幕上看到的图像)fixed4 frag(v2f i) : SV_Target{fixed4 transit = tex2D(_TransitionTex, i.uv1);fixed4 col = tex2D(_MainTex, i.uv);// 小于cutoff值,使用_Color插值此像素if (transit.r < _Cutoff)return col = lerp(col, _Color, _Fade);return col;}                  ENDCG}}
}

完整unity package 已经上传
shader已经详细中文注解

如何使用:
1 导入package
2 打开UITransitions Scene

3 选择UITransitions 材质,调整属性、更换mask图

4. Properties说明:
Transition Texture :遮罩纹理
Screen Color: 遮罩颜色
Cutoff : 遮罩大小(需要用动画去控制的值)
Fade: 遮罩混合度

完整unity package 已经上传
shader已经详细中文注解

更多Shader实例

shader实例:实现类似宝可梦 Pokemon 的战斗转场相关推荐

  1. pokemon 下载 android,宝可梦pokemon home

    宝可梦pokemon home是一款非常好玩的卡通画风的模拟经营游戏,游戏名为宝可梦pokemon home,这款游戏的背景就是大家相当熟悉的宝可梦,宝可梦pokemon home这款游戏的操作难度不 ...

  2. python 宝可梦_Python数据分析 | 宝可梦篇2

    目标: 一.各种族系数量占比 二.各世代宝可梦数量 三.种族值解析 四.传说宝可梦相关分析,各时代占比,属性值与传说宝可梦的相关性,种族系与传说宝可梦的相关性 五.各世代推荐宝可梦 #导入三个Pyth ...

  3. 乱谈精灵宝可梦Go(Pokemon Go)

    精灵宝可梦Go(Pokemon Go)是去年任天堂推出的一款手游,全球大热,短短一周的时间跃居美国Google Play下载量第一,上线三天任天堂股价暴涨90亿美金.而我的专业恰好和这个游戏挺相关的. ...

  4. android wear 神奇宝贝,宝可梦Home安卓版下载_宝可梦Home手机app官方版(Pokemon Home) v1.0.3-安族游戏网...

    宝可梦Home安卓版(Pokemon Home)是基于云技术所打造的一款云端服务app,该应用能够连接不同的设备,并且通能够同步不同设备的宝可梦进行宝可梦数据交换,同时移动端也能够和ns端利用此应用来 ...

  5. 宝可梦合体再次流行?Pokemon Fusion的技术实现

    Axie Infinity  是一款灵感来自宝可梦的宠物繁殖战斗游戏.玩家需要先买入 3 只宠物才能开始,宠物可以培育新的品种,战斗过程中可以赚取奖励,同时宠物可被出售. 培育.繁殖新的品种,让玩家有 ...

  6. 如何编写和精灵宝可梦一样的 app?

    原文:How To Make An App Like Pokemon Go 作者:Jean-Pierre Distler 译者:kmyhy 如今最流行的一个手机游戏就是精灵宝可梦.它使用增强现实技术将 ...

  7. 宝可梦小游戏_Java_控制端——总结

    宝可梦&伏魔录 小游戏_Java_控制端:小总结 文章目录 宝可梦&伏魔录 小游戏_Java_控制端:小总结 前言 一.简述 二.宝可梦项目 1.设计思想 2.宝可梦项目总结 1. 前 ...

  8. 5 年营收超 50 亿美元,「宝可梦」游戏是怎么做到的?

    本文转载自极客公园 仅用了一个 GPS 定位,就在游戏领域长出了一个新巨头 近日,时值<精灵宝可梦 Go>(Pokemon Go,以下简称<宝可梦 Go>)五周年之际,数据显示 ...

  9. 给终端装上宝可梦主题!小姐姐路过都爱上了!

    大家好,我是TJ 一个励志推荐10000款开源项目与工具的程序员 就算不怎么玩游戏看动漫的小伙伴,多多少少也应该知道宠物小精灵,按现在的叫法,就是精灵宝可梦,知道那只黄色的会放电的看着毛茸茸超可爱的只 ...

最新文章

  1. CSU 1806 Toll 自适应simpson积分+最短路
  2. matlab 高斯模糊_摸鱼 | 茴香豆的“茴”有四种写法,模糊有几种糊法?
  3. 如何编辑ttf字体文件
  4. Win10验证USB Audio MIC(三)
  5. c#modbus tcp通讯助手开源_Modbus 调试助手的使用(一)
  6. 推荐几个SQL在线学习网站
  7. 如何将音乐上传到YouTube音乐
  8. JAVA静态变量 静态方法 两者间的区别 继承的特点 继承中的成员变量关系和成员方法 构造方法
  9. 《玩透嵌入式C的角角落落》深入分析sprintf和printf函数
  10. 微信升级外链管理规范,「砍一刀帮我加速」要被禁止了
  11. spring框架_IOC_DI_AOP_MVC
  12. “师创杯”山东理工大学第九届ACM程序设计竞赛 正式赛 F.校赛~校赛~【思维+规律题】
  13. 蓝桥杯——单片机设计与开发初学者必备资料
  14. 服务器开发系列(三)——Linux与Windows操作系统基础功能对比
  15. 轻社区的“赚钱术”:免费社区赚钱,去年利润1个亿
  16. Nero 7 Premium Reloaded 7.8.5.0
  17. Vlookup函数和Sumif函数详解
  18. Mituan-极客时间-漏洞挖掘与智能攻防实战
  19. 关于STL模板的使用效率与控制输出时最后不加空格问题
  20. 计算机专业入学讲座,新生入学教育——计算机专业介绍

热门文章

  1. 创建一个简单OIO模式的socket服务端
  2. buuctf Mark loves cat
  3. 独立开发仿造一个开关机器人
  4. PDF页面删除怎么操作
  5. SYSML语言OMG认证考试经验分享
  6. 我为什么花 1 万多买 MacBook Pro,重点是推荐我常用的开发写作相关的工具
  7. 【笔记本电脑连接真无线 jbl flash x耳机】pin 是 000000
  8. android bmob获取密码,Bmob后端云初体验
  9. oppo文件管理android在哪里,OPPO手机中缓存视频文件路径在哪里查看?怎么查看?
  10. php rm-rf,rm-rf误操作的恢复过程