ColorCtr控制颜色渐变
ColorCtr控制颜色渐变
public class ColorCtr : MonoBehaviour
{
public static global_color Instance; //方便外部调用
public float speed = 1F; //定义速度
public GameObject goRawImage; //定义遮挡Object
private RawImage _image; //定义遮挡图片
private bool _toClear = true; //定义变亮bool
private bool _toBlack = false; //定义变暗bool
//初始化
void Awake()
{
//调用实例
Instance = this;
//判断是否有遮挡物、找到遮挡图片
if (goRawImage)
{
_image = goRawImage.GetComponent<RawImage>();
}
}
//外部调用,改变bool变亮
public void setToClear()
{
_toClear = true;
_toBlack = false;
}
//外部调用,改变bool变暗
public void setToBlack()
{
_toClear = false;
_toBlack = true;
}
//改变颜色插值变亮方法
private void FadeToClear()
{
_image.color = Color.Lerp(_image.color, Color.clear, speed*Time.deltaTime);
}
//改变颜色插值变暗方法
private void FadeToBlack()
{
_image.color = Color.Lerp(_image.color, Color.black, speed * Time.deltaTime);
}
//变亮方法的具体实现
private void SceneToClear()
{
//调用改变颜色变亮插值
FadeToClear();
//颜色彻底改变
if (_image.color.a <= 0.05)
{
_image.color = Color.clear;
_image.enabled = false;
_toClear = false;
}
}
//变暗方法的具体实现
private void SceneToBlack()
{
//打开image
_image.enabled = true;
//调用改变颜色变暗插值
FadeToBlack();
//颜色彻底改变
if (_image.color.a >= 0.95)
{
_image.color = Color.black;
_toClear = false;
}
}
//时刻检测bool变量是否改变,调用方法
void Update()
{
if (_toClear)
{
//调用变亮方法
SceneToClear();
}
else if (_toBlack)
{
//调用变暗方法
SceneToBlack();
}
}
}
注:需要有 goRawImage遮挡物、_image遮挡图片,通过调用setToClear和setToBlack方法具体实现、、、
ColorCtr控制颜色渐变的更多相关文章
- 自定义控件之圆形颜色渐变进度条--SweepGradient
前几天在群里面有人找圆形可颜色渐变进度条,其中主要的知识点是SweepGradient: mSweepGradient = new SweepGradient(240, 360, new int[] ...
- 【.NET 与树莓派】WS28XX 灯带的颜色渐变动画
在上一篇水文中,老周演示了 WS28XX 的基本使用.在文末老周说了本篇介绍颜色渐变动画的简单实现. 在正式开始前,说一下题外话. 第一件事,最近树莓派的价格猛涨,相信有关注的朋友都知道了.所以,如果 ...
- iOS 动画绘制线条颜色渐变的折线图
效果图 .................... 概述 现状 折线图的应用比较广泛,为了增强用户体验,很多应用中都嵌入了折线图.折线图可以更加直观的表示数据的变化.网络上有很多绘制折线图的demo,有 ...
- CSS3颜色渐变模式
1.线性渐变:linear-gradient 语法:<linear-gradient> = linear-gradient([ [ <angle> | to <si ...
- 【iOS实现一个颜色渐变的弧形进度条】
在Github上看到一些进度条的功能,都是通过Core Graph来实现.无所谓正确与否,但是开发效率明显就差很多了,而且运行效率还是值得考究的.其实使用苹果提供的Core Animation能够非常 ...
- IOS导航栏颜色渐变与常用属性
(转:http://www.cnblogs.com/Lingchen-start/archive/2015/10/23/4904361.html) 今年很忙,忙的写日志的时间都很少. 少的可怜. 自 ...
- css3的背景颜色渐变@线性渐变
背景颜色渐变之线性渐变 语法形式: firefox浏览器 background:-moz-linear-gradient(position/deg,startColor,endColor); oper ...
- 颜色渐变的JS代码
今天做组织机构,要分级别显示颜色,自己计算半天也没算出颜色渐变的方法,出来总是花里胡哨的难看的不要不要的,所以查了一下,找到一个js代码,试了试,很完美哦! <!DOCTYPE html> ...
- android Button 切换背景,实现动态按钮和按钮颜色渐变
android Button 切换背景,实现动态按钮和按钮颜色渐变 一.添加android 背景筛选器selector实现按钮背景改变 1.右键单击项目->new->Oth ...
随机推荐
- (数组)Largest Rectangle in Histogram(栈解问题)
Largest Rectangle in Histogram Given n non-negative integers representing the histogram's bar height ...
- C++: 其他类型转string
1.to_string函数 C++11新增的函数,c++11标准增加了全局函数std::to_string,以及std::stoi/stol/stoll等等函数(string转int,long,以及l ...
- 51nod1244 莫比乌斯函数之和(杜教筛)
题面 传送门 题解 我--我忘记把预处理的块的大小调成\(n^{\frac{2}{3}}\)了--(仰天) 首先\(\mu*1=e\) 然后杜教筛就行了 //minamoto #include< ...
- Orcale创建函数(function)
Oraclec创建函数的语法规则 create or replace function 函数名 (参数名1 参数类型,参数名2 参数类型) return number is Result num ...
- jq 使用手册
翻译整理:Young.J官方网站:http://jquery.com jQuery是一款同prototype一样优秀js开发库类,特别是对css和XPath的支持,使我们写js变得更加方便!如果你不是 ...
- CF959E Mahmoud and Ehab and the xor-MST 思维
Ehab is interested in the bitwise-xor operation and the special graphs. Mahmoud gave him a problem t ...
- Python Web开发中的WSGI协议简介
在Python Web开发中,我们一般使用Flask.Django等web框架来开发应用程序,生产环境中将应用部署到Apache.Nginx等web服务器时,还需要uWSGI或者Gunicorn.一个 ...
- pacman命令用法
Pacman 是一个命令行工具,这意味着当你执行下面的命令时,必须在终端或控制台中进行. 1.更新系统 在 Arch Linux 中,使用一条命令即可对整个系统进行更新: pacman -Syu 如果 ...
- Infiniband交换机的FabricMonitor加载数据hang
刚刚帮客户将Exadata中Infiniband交换机的固件版本从2.1.3-1 升级到2.2.7-1,但升级后发现Infiniband交换机的FabricMonitor功能无法使用,具体如下图所示. ...
- Step by Step: 基于MFC下的COM组件开发-Helloworld
http://blog.csdn.net/sybifei/article/details/45008745 [这篇文章有问题, 仅供参考] http://blog.csdn.net/define_us ...