unity中实现三个Logo图片进行3秒钟的若隐若现后互相切换Logo图片
private List<Sprite> storeTexture;
public void Start()
{
storeTexture = new List<Sprite>();
storeTexture.Clear();
//加载图片并储存在List中
Sprite texture1 = Resources.Load<Sprite>("Textures/one");
storeTexture.Add(texture1);
Sprite texture2 = Resources.Load<Sprite>("Textures/two");
storeTexture.Add(texture2);
Sprite texture3 = Resources.Load<Sprite>("Textures/3");
storeTexture.Add(texture3);
//遍历List中物体并打印出名字
foreach (var kk in storeTexture)
{
Debug.LogError(kk.name);
}
}
private float Timer = ;
private float value = ;
public void Update()
{
//Logo1从透明变为不透明状态
if (logoSwtich == LogoSwtich.Start)
{
Timer += Time.deltaTime / value;
logo.GetComponent<Image>().color = new Color(, , , Timer);
if (Timer >= )
{
logoSwtich = LogoSwtich.DeleteLogo1Alpha;
}
}
//Logo1从不透明变为透明状态
if (logoSwtich == LogoSwtich.DeleteLogo1Alpha)
{
Timer -= Time.deltaTime / value;
logo.GetComponent<Image>().color = new Color(, , , Timer);
if (Timer <= )
{
logoSwtich = LogoSwtich.ChangeLogo2;
}
}
//将Logo1更换为Logo2
if (logoSwtich == LogoSwtich.ChangeLogo2)
{
logo.GetComponent<Image>().sprite = storeTexture[];
logoSwtich = LogoSwtich.AddLogo2Alpha;
}
//Logo2从透明变为不透明状态
if (logoSwtich == LogoSwtich.AddLogo2Alpha)
{
Timer += Time.deltaTime / value;
logo.GetComponent<Image>().color = new Color(, , , Timer);
if (Timer >= )
{
logoSwtich = LogoSwtich.DeleteLogo2Alpha;
}
}
//Logo1从不透明变为透明状态
if (logoSwtich == LogoSwtich.DeleteLogo2Alpha)
{
Timer -= Time.deltaTime / value;
logo.GetComponent<Image>().color = new Color(, , , Timer);
if (Timer <= )
{
logoSwtich = LogoSwtich.ChangeLogo3;
}
}
//将Logo2更换为Logo3
if (logoSwtich == LogoSwtich.ChangeLogo3)
{
logo.GetComponent<Image>().sprite = storeTexture[];
logoSwtich = LogoSwtich.AddLogo3Alpha;
}
//Logo3从透明变为不透明状态
if (logoSwtich == LogoSwtich.AddLogo3Alpha)
{
Timer += Time.deltaTime / value;
logo.GetComponent<Image>().color = new Color(, , , Timer);
if (Timer >= )
{
logoSwtich = LogoSwtich.DeleteLogo3Alph;
}
}
//Logo3从不透明变为透明状态
if (logoSwtich == LogoSwtich.DeleteLogo3Alph)
{
Timer -= Time.deltaTime / value;
logo.GetComponent<Image>().color = new Color(, , , Timer);
if (Timer <= )
{
logoSwtich = LogoSwtich.ChangeLogo1;
}
}
//将Logo3更换为Logo1
if (logoSwtich == LogoSwtich.ChangeLogo1)
{
logo.GetComponent<Image>().sprite = storeTexture[];
logoSwtich = LogoSwtich.Start;
}
}
LogoSwtich logoSwtich = LogoSwtich.Start;
//Logo图片切换状态
public enum LogoSwtich
{
Start,
DeleteLogo1Alpha,
ChangeLogo2,
AddLogo2Alpha,
DeleteLogo2Alpha,
ChangeLogo3,
AddLogo3Alpha,
DeleteLogo3Alph,
ChangeLogo1,
End
}
unity中使用Image组件更换Logo图片属性如下:
1、sprite 用来渲染图像的精灵。
2、overrideSprite 设置用于呈现的覆盖精灵,设置为null将恢复默认的srpite。
unity中使用RawImage组件更换图片属性是 texture (RawImage的纹理)
unity中实现三个Logo图片进行3秒钟的若隐若现后互相切换Logo图片的更多相关文章
- unity中实现三个Logo图片进行若隐若现的切换并有延时切换图片的效果
public GameObject canvas; private Transform logoParent; private Transform Logo_logo; //logo一 private ...
- 关于Unity中的帧动画组件的编写
一.帧动画 1: 美术准备好一个连续动作的离散图片;2: 程序在准确的时间来切换这个图片;3: 优点: 简单,速度快; 缺点:资源占用相对过大; 二.frame_anim组件编写 1: 代码里面强制要 ...
- 【Unity3D基础教程】给初学者看的Unity教程(三):通过制作Flappy Bird了解Native 2D中的Sprite,Animation
作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明.如果你喜欢这篇文章,请点[推荐].谢谢! 引子 上一次我们讲了MonoBehaviou ...
- 解读Unity中的CG编写Shader系列三
转自http://www.itnose.net/detail/6096068.html 在上一个例子中,我们得到了由mesh组件传递的信息经过数学转换至合适的颜色区间以颜色的形式着色到物体上.这篇文章 ...
- [翻译]Unity中的AssetBundle详解(三)
构建AssetBundles 在AssetBundle工作流程的文档中,我们有一个示例代码,它将三个参数传递给BuildPipeline.BuildAssetBundles函数.让我们更深入地了解我们 ...
- 【转】Unity中的协同程序-使用Promise进行封装(三)
原文:http://gad.qq.com/program/translateview/7170967 译者:崔国军(飞扬971) 审校:王磊(未来的未来) 在这个系列的最后一部分文章,我们要通过 ...
- 从Unity中的Attribute到AOP(三)
上一篇我们对系统的Attributes进行了MSIL代码的查看,了解到了其本质就是一个类的构造函数.本章我们将编写自己的Attributes. 首先我们定义书的属性代码,如下: [AttributeU ...
- 【原创翻译】初识Unity中的Compute Shader
一直以来都想试着自己翻译一些东西,现在发现翻译真的很不容易,如果你直接把作者的原文按照英文的思维翻译过来,你会发现中国人读起来很是别扭,但是如果你想完全利用中国人的语言方式来翻译,又怕自己理解的不到位 ...
- Unity 中场景切换
Unity游戏开发中,单个Scene解决所有问题似乎不可能,那么多个Scene之间的切换是必然存在.如果仅仅是切换,似乎什么都好说,但是在场景比较大的时候不想让玩家等待加载或者说场景与场景之间想通过一 ...
随机推荐
- 力扣(LeetCode)1002. 查找常用字符
给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表.例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 ...
- 力扣(LeetCode) 9.回文数
判断一个整数是否是回文数.回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向 ...
- MySQL中如何建立主从复制
## 1 概述 ## MySQL内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves) ...
- (转+整理)C# BinaryFormatter进行序列化与反序列化
序列化又称串行化,是.NET运行时环境用来支持用户定义类型的流化的机制.其目的是以某种存储形式使自定义对象持久化,或者将这种对象从一个地方传输到另一个地方. .NET框架提供了两种种串行化的方式:1. ...
- centos7: php7.2.9安装配置
下载php http://cn2.php.net/distributions/php-7.2.9.tar.gz 解压到: /usr/local/src/ 接下来进行参数配置,配置前如果没有libxml ...
- 单分子荧光原位杂交(smFISH)
single-molecule RNA fluorescence in situ hybridization (RNA smFISH) 单分子荧光原位杂交(smFISH)是一种新的基因表达分析方法,能 ...
- 20165327 2017-2018-2 《Java程序设计》第7周学习总结
20165327 2017-2018-2 <Java程序设计>第7周学习总结 教材内容总结 第十一章 (一)MySQL数据库服务器 下载安装MySQL服务器 启动MySQL数据库服务器 在 ...
- @suppresswarnings(unchecked)的作用
@suppresswarnings(unchecked)的作用 一般在项目中会出现红色的报错,这个是影响项目运行的,无法启动,会停在那里,而warning警告,黄色的虽然不是会让项目停止,但是却是不规 ...
- Spring Cloud之注册中心搭建
一.注册中心服务端搭建 1)引入相关Maven坐标 <dependency> <groupId>org.springframework.cloud</groupId> ...
- LeetCode--303--区域和检索 - 数组不可变
问题描述: 给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点. 示例: 给定 nums = [-2, 0, 3, -5, 2, -1 ...