首页 > 编程语言 > 详细

技能冷却效果-[Unity]

时间:2014-10-30 17:12:33      阅读:785      评论:0      收藏:0      [点我收藏+]

这里我们主要讨论类似LOL中技能冷却的实现。如图:

bubuko.com,布布扣

1、使用NGUI中的Filled Sprite来实现。这里只需要简单的将遮罩层的Sprite的type设置成Filled,FillDir为Radial360,然后控制Fill Amount即可。如下图

bubuko.com,布布扣


2、使用Shader来实现,原来也很简单,设置一个Alpha值渐增的遮罩贴图,设置一个阙值,Alpha大于这个阙值的部分不透明,小于阙值的透明,这样我们通过改变这个阙值的大小就可以达到想要的效果了。在shader中要实现根据alpha值的大小来决定是否显示,我们可以使用alpha test,也可以直接根据alpha值来设置alpha为0或者为1.如:

half4 frag(v2f i) : COLOR
{
	fixed4 c = tex2D(_MainTex, i.uv);
	fixed a = tex2D(_MaskTex, i.uv).a;
	c.a *= a >= _Threshold ? 0f : 1f;
	return c;
}
这里使用的遮罩贴图如:

bubuko.com,布布扣

技能冷却效果-[Unity]

原文:http://blog.csdn.net/cubesky/article/details/40620199

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!