一、首先,我们先创建一个Text
    依次选择Component→UI→Text创建一个Text,创建完成后如下:

二、创建完成后,在Project面板点击Create→C# Script,本例命名为InAndFade 
三、编写代码之前,为了确保能够调用到Text类,所以要先手动引入命名空间

using UnityEngine.UI;
 四、完整代码如下
 public class InAndFade : MonoBehaviour
{
//渐隐渐现
public bool Show = true;
public bool Fade = false;
public float duration = 2.5f;
public float timeFromStart = 0f; //从场景加载开始经过这些时间后再发生
//向下滑动
public bool isSlide = true; //是否从上往下滑动
public float offset = -1.0f; //偏差为10
//变色
public bool isChangeColor = true;
//等待
private bool wait = true;
void Start()
{
if (Show && Fade)
{
Fade = false;
}
else if (!Show && !Fade)
{
Show = true;
}
}
IEnumerator Wait()
{
yield return new WaitForSeconds(timeFromStart);
}
void Update()
{
#region 变色代码
if (isChangeColor)
{
Color nowColor = gameObject.GetComponent<Text>().color;
if (nowColor.r != && nowColor.g != && nowColor.b != )
{
nowColor.r--;
nowColor.g += 2.8f;
nowColor.b += 0.9f;
}
gameObject.GetComponent<Text>().color = nowColor;
if (nowColor.g >= && nowColor.g <= )
{
nowColor.g--;
}
}
#endregion
#region 滑动代码
if (isSlide)
{
Vector3 initialPos = gameObject.GetComponent<Transform>().position;
float posProportion = Time.time / duration;
Vector3 nowPos = new Vector3(initialPos.x, Mathf.Lerp(initialPos.y + offset, initialPos.y, posProportion), initialPos.z);
gameObject.transform.position = nowPos;
}
#endregion
#region 渐隐渐现代码
if (wait)
{
StartCoroutine(Wait());
}
if (Fade)
{
if (Time.time > duration)
{
Destroy(gameObject);
}
Color newColor = gameObject.GetComponent<Text>().color;
float proportion = Time.time / duration;
newColor.a = Mathf.Lerp(, , proportion);
gameObject.GetComponent<Text>().color = newColor;
}
if (Show)
{
Color newColor = gameObject.GetComponent<Text>().color;
float proportion = Time.time / duration;
newColor.a = Mathf.Lerp(, , proportion);
gameObject.GetComponent<Text>().color = newColor;
}
#endregion
}
}

最新文章

  1. Qt——组件位置随窗口变化
  2. python多线程学习记录
  3. JAVA设计模式 之 策略模式
  4. RAID、软RAID和硬RAID
  5. HDOJ-1999 不可摸数
  6. 轻量级MVC标准
  7. php 两个数组是否相同,并且输出全面的数据,相同的加一个字段标示
  8. 构建高可用web站点(四)
  9. NYOJ 299
  10. 每天学习一点点...css...
  11. iBrand 教程 0.1:Windows + Homestead 5 搭建 Laravel 开发环境
  12. Web Api 利用 cors 实现跨域
  13. Mysql之触发器的操作:
  14. Redis实现单点登录
  15. Linux Debugging(二): 熟悉AT&amp;T汇编语言
  16. sudo: no tty present and no askpass program specified
  17. Flutter 布局(十)- ListBody、ListView、CustomMultiChildLayout详解
  18. GDAL读写矢量文件——Python
  19. [题目] Luogu P1312 Mayan游戏
  20. Android实现导航菜单随着ListView联动,当导航菜单遇到顶部菜单时停止在哪里,并且listview仍能滑动

热门文章

  1. 快速建立一个Django项目
  2. LeetCode 面试题 02.03. 删除中间节点
  3. C++\CLI使用.net委托,*Callback注意&quot;this&quot;
  4. 【MVC+EasyUI实例】对数据网格的增删改查(下)
  5. 剑指offer-面试题4-二维数组中的查找-数组
  6. P1055 ISBN号码(getline(cin,s); printf(&quot;%s&quot;,str); )
  7. 数组工具Array的基本使用
  8. Pr常用的键盘操作
  9. 【13】正则化网络激活函数(Batch归一化)
  10. 咸鱼的ACM之路:DFS水题集