您的位置:首页 > 移动开发 > Unity3D

[Unity3D]手机3D游戏开发:如何实现最高分的存储与显示(六)----实现文字闪烁效果

2013-01-26 17:42 951 查看
学习Unity脚本推荐:Unity3D官网索引

在前面的案例中我们已经建好了一个高分榜的框架,接下来进一步完善一些细节。

首先是使用UGUI.Color调整文本颜色。

在Inpector面板直接修改可以看到高分榜中的文本颜色已经发生了改变:



当然也可以在脚本中进行调整:



调整之后的效果便是:



关于GUI.Color的使用请参照:官网索引

GUI.Color(R,G,B,A);是Color的构造方法,使用RGB颜色,A代表Alpha值。

当然可以把GUI.Color放在For循环中,让第一名高亮显示:



运行结果便是:



如果要实现输入处的变色显示,使用一个for循环便也可以满足了:



效果如下:



在合适的位置设置GUI.Color会让你的游戏文本呈现需要的颜色。

当然我们也可以为它加上一些更风骚的效果,比如说:渐变。

官网中的解释文档

其中的实例代码如下:

// Converts a white color to a black one trough time.
var lerpedColor : Color = Color.white;
function Update() {
lerpedColor = Color.Lerp(Color.white, Color.black, Time.time);
}

简单来说就是从第一个颜色跳转到第二个颜色。
运行发现文字的颜色发生了改变,但是我们想给它加一个闪烁的效果。

这里再介绍一种新的函数:Mathf.PingPong

它的作用就是随机产生一个不大于长度且永远小于0的数值。

返回的值将会在0和Length之间来回移动。
我们将其应用到GUI.Color的设置中:



这是你就会发现你的文本处于一种在黑白之间循环的闪烁效果了。

如果你嫌闪烁的太慢了,可以使用这种方法:



如果觉得黑色的太深了,可以调节Lerp函数中的最后一个参数值:



这样颜色从白色变成灰色的时候便又会变回白色了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐