在Unity5中使用C#脚本实现UI的下滑、变色、渐隐渐现效果
一、首先,我们先创建一个Text
依次选择Component→UI→Text创建一个Text,创建完成后如下:

二、创建完成后,在Project面板点击Create→C# Script,本例命名为InAndFade
三、编写代码之前,为了确保能够调用到Text类,所以要先手动引入命名空间
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
}
}
在Unity5中使用C#脚本实现UI的下滑、变色、渐隐渐现效果的更多相关文章
- Unity3D中UGUI不使用DOTween制作渐隐渐现效果
在做UI后期设计时,我们可能要对UI做一些特效,这篇文章我们来学习下如何在Unity3d中对实现渐隐渐现的效果, 首先我们看下Unity New UI即UGUI中渐隐渐现的做法. 观察我们会发现Uni ...
- 在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试
原文:在 Snoop 中使用 PowerShell 脚本进行更高级的 UI 调试 版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可.欢迎转载.使用.重新发布, ...
- Unity5中叹为观止的实时GI效果
http://www.manew.com/thread-43970-1-1.html 今天为大家分享unity与Alex Lovett共同使用unity5制作的Shrine Arch-viz Demo ...
- 第二十三篇:在SOUI中使用LUA脚本开发界面
像写网页一样做客户端界面可能是很多客户端开发的理想. 做好一个可以实现和用户交互的动态网页应该包含两个部分:使用html做网页的布局,使用脚本如vbscript,javascript做用户交互的逻辑. ...
- Maya中输出nuke脚本的方法
因项目需要,三维部门跟踪组动画组都需要一个能够快速输出nuke预合成工程的脚本.脚本已经写完,源码不便于放出来,写一个大致思路吧. 我首先分析了nuke工程,内部包含了哪些节点,这些节点有哪些属性需要 ...
- Unity5中新的Shader体系简析
一.Unity5中新的Shader体系简析 Unity5和之前的书写模式有了一定的改变.Unity5时代的Shader Reference官方文档也进一步地变得丰满. 主要需要了解到的是,在原来的Un ...
- 【COCOS2DX-LUA 脚本开发之一】在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途!
[COCOS2DX-LUA 脚本开发之一]在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途! 分类: [Cocos2dx Lua 脚本开发 ] 2012-04-1 ...
- Firebug中调试中的js脚本中中文内容显示为乱码
Firebug中调试中的js脚本中中文内容显示为乱码 设置 页面 UFT-8 编码没用, 解决方法:点击 "Firebug"工具栏 中的"选项"---" ...
- 在html中添加script脚本的方法和注意事项
在html中添加script脚本有两种方法,直接将javascript代码添加到html中与添加外部js文件,这两种方法都比较常用,大家可以根据自己需要自由选择 在html中添加<script& ...
随机推荐
- kubernetes 资源管理
前言 在kubernetes环境下,无论集群再大,对应的集群资源(cpu.memory.storage)总是有上限的.而默认情况下,我们启动的pod.以及pod中运行的容器,对应的资源是不加限制的.理 ...
- js对象模型3
3
- warning: LF will be replaced by CRLF in
warning: LF will be replaced by CRLF in analysis/Result.csv. The file will have its original line en ...
- 广度优先搜索BFS---求出矩阵中“块”的个数
题目: 给出一个 m x n 的矩阵,矩阵中的元素为0或1.如果矩阵中有若干个 1是相邻的,那么称这些1构成了一个“块”.求给定的矩阵中“块”的个数. 0 1 1 1 0 0 1 0 0 1 0 0 ...
- 指数ETF基金的组合分析方法初探
本文在Creative Commons许可证下发布 试想一下,大多数基金“推荐”的配置策略都假设某种股票/债券组合.如果我们想寻求成本最小收益最高的组合(以yahoo finance上的数据来分析,因 ...
- JS中0.1+0.2!=0.3
在控制台输入0.1+0.2,会得出以下结果 即不等于0.3.下面我们说一下原因. 一.存储原理 1.在计算机中数字无论是定点数还是浮点数都是以多位二进制的方式进行存储的.2.在JS中数字采用的IEEE ...
- PTA Is Topological Order
Write a program to test if a give sequence Seq is a topological order of a given graph Graph. Format ...
- linux 下查看json 文件 使用jq工具
安装 文档 yum 安装 yum search jq yum -y install jq.x86_64 apt-get install jq jq支持查看 jq . json 文件 查看json文件 ...
- Python编辑器——Pycharm以及Sublime Text 3的安装教程
近来工作繁忙,顾不上学习,但还是有些小兄弟问我有没有编写Python代码的工具以及安装方法,跟我吐槽说他安装后总是有问题.那么今天就来说一说Pycharm的安装,顺带说一下Sublime Text 3 ...
- 第31届IMO 第2题
题目 设n>=3,考虑一个圆上由2n-1个不同点构成的集合E.现给E中恰好k个点染上黑色,如果至少有一对黑点使得这两个黑点之间的弧上(两段弧中的某一个)包含恰好E中的n个点,就成这样的染色方法是 ...