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之间的切换是必然存在.如果仅仅是切换,似乎什么都好说,但是在场景比较大的时候不想让玩家等待加载或者说场景与场景之间想通过一 ...
随机推荐
- try catch对Spring事务的影响
一.Spring 的默认事务机制,当出现unchecked异常时候回滚,checked异常的时候不会回滚. 异常中unchecked异常包括error和runtime异常.需要try catch或向上 ...
- Java学习必备书籍推荐终极版!
Java 基础 <Head First Java>(推荐,豆瓣评分 8.7,1.0K+人评价): 可以说是我的 Java 启蒙书籍了,特别适合新手读当然也适合我们用来温故 Java 知识点 ...
- spring ----> ResourceBundle [message] not found for MessageSource: Can't find bundle for base name message, local_zh
环境: idea 2018.1.3社区版,jdk8,spring4.2.0,maven3.5.2 主题: spring国际化 出现的问题: ResourceBundle [message] not f ...
- WCF服务寄宿IIS与Windows服务 - C#/.NET
WCF是Windows平台下程序间通讯的应用程序框架.整合和 .net Remoting,WebService,Socket的机制,是用来开发windows平台上分布式开发的最佳选择.wcf程序的运行 ...
- ssd制作数据和训练
1.在/data/VOCdevkit下建立自己的数据集名称如MyDataSet,在MyDataSet目录下需包含Annotations.ImageSets.JPEGImages三个文件夹: 2.Ima ...
- Count Up Down(上下计数)
这个题目是 Kayak 发布的代码挑战题目. 最简单的描述就是不使用循环,输出 0 到 5,然后同样不是会用循环的方式再次输出 5 到 0. 英文描述 Part 1 Write a program t ...
- px em rem 区别
PX:PX实际上就是像素,用PX设置字体大小时,比较稳定和精确.但是这种方法存在一个问题,当用户在浏览器中浏览我们制作的Web页面时,如果改变了浏览器的缩放,这时会使用我们的Web页面布局被打破.这样 ...
- Django admin 管理工具
admin 组件的使用 Django 提供了基于 web 的管理工具.Django 自动管理工具是 django.contrib 的一部分. INSTALLED_APPS = [ 'django.co ...
- apicloud 环信总结
点击链接先查看一下apicloud 环信的文档 https://docs.apicloud.com/Client-API/Open-SDK/easeChat 文档中写了很多,但官方给的文档还是有问题, ...
- 【其他】【服务器】【4】删除Windows系统中不想要的服务
步骤: 1,开始菜单栏查找“服务”,打开后找到想要删除的服务 2,右键单击想要删除的服务,选择“属性”-“常规”-“服务名称”,记下服务名称(AA) 3,开始菜单栏输入“cmd”打开命令行窗口,输入s ...