学习笔记-Unity3d代码实现Windows10加载圈圈的效果
最近在写一个Unity3d的模仿windows10的桌面的程序,由于Unity3d本身不支持Gif图片,所以突发奇想使用代码来实现接近的。
接下来是代码部分:不一一解析,很简单,看的懂原理就Okly了。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class LoadImg : MonoBehaviour {
public GameObject[] gms;
Dictionary<int, float> speed = new Dictionary<int, float>();
public float s=;
// Use this for initialization
void Awake()
{
hide = false; for (int i = ; i < gms.Length; i++)
{
gms[i].transform.localEulerAngles = Vector3.back * i * 23.3f;
speed.Add(i, s);
}
StartCoroutine(RUN()); }
private void Rest()
{
if (hide)
{
for (int i = ; i < gms.Length; i++)
{
gms[i].transform.eulerAngles = Vector3.back * i * 23.3f;
}
}
StartCoroutine(RUN());
}
// Update is called once per frame
void FixedUpdate () {
for(int i = ; i < gms.Length; i++)
{
gms[i].transform.Rotate(Vector3.back * Time.deltaTime*speed[i]);
}
}
bool hide = false;
IEnumerator RUN()
{ for (int i = gms.Length-; i >=; i--)
{ if (hide)
{
StartCoroutine(SETSpeed(i));
yield return new WaitForSeconds(0.123f);
gms[i].SetActive(true); }
else
{
StartCoroutine(SETSpeed(i));
yield return new WaitForSeconds(0.123f);
gms[i].SetActive(false);
} }
if (hide)
{
yield return new WaitForSeconds(2.23f);
}
else
{
yield return new WaitForSeconds(1.23f); }
hide = !hide;
Rest(); }
IEnumerator SETSpeed(int i)
{
speed[i] = 2.23f * s;
yield return new WaitForSeconds(1.23f*0.23f*1.23f);
speed[i] = s;
} }
然后我们创建一个中心偏移的UI,Texture就像这样的:

关于中心偏移:
父对象为的y为0,这个是一个空物体。

子对象LS是一个Image/RawImage,y向上偏移了123个单位长度,然后我们就可以旋转父对象就可以看到子对象在做圆周运动了!

代码绑定:
复制12个上面做的对象放到一个空物体里,重命名复制的对象(这个可以不要不过我强迫症),然后拖到Gms里面(size这个是值个数,12个就写12就会出现12个空,保证每个都单一绑定),S代表的是旋转速度单位(角度/s)

最后保存一下,运行...效果如图:

当然实际效果没有那么生硬。
最后编辑时间 2018/6/27 5:59.
学习笔记-Unity3d代码实现Windows10加载圈圈的效果的更多相关文章
- OpenLayers学习笔记(十)— 动态加载JSON数据模拟航迹线
在openlayers 3 上,加载本地json数据,动态绘制航迹线,以飞机当前位置为地图中心,此例子是模拟DEMO 本文链接:动态加载JSON数据模拟航迹线 作者:狐狸家的鱼 GitHub:八至 前 ...
- 高性能javascript学习笔记系列(1) -js的加载和执行
这篇笔记的内容主要涉及js的脚本位置,如何加载js脚本和脚本文件执行的问题,按照自己的理解结合高性能JavaScript整理出来的 javascript是解释性代码,解释性代码需要经历转化成计算机指令 ...
- 【转】ViewPager学习笔记(一)——懒加载
在项目中ViewPager和Fragment接口框架已经是处处可见,但是在使用中,我们肯定不希望用户在当前页面时就在前后页面的数据,加入数据量很大,而用户又不愿意左右滑动浏览,那么这时候ViewPag ...
- [转]ViewPager学习笔记(一)——懒加载
在项目中ViewPager和Fragment接口框架已经是处处可见,但是在使用中,我们肯定不希望用户在当前页面时就在前后页面的数据,加入数据量很大,而用户又不愿意左右滑动浏览,那么这时候ViewPag ...
- easyui学习笔记8—在手风琴中加载其他的页面
在手风琴中加载其他页面和在表格中加载其他的页面有写类似的,就是请求另外一个页面显示数据. 1.先看看引用的资源文件 <link rel="stylesheet" href=& ...
- Duilib学习笔记《07》— 资源加载
Duilib的界面表现力能如此丰富,很大程度上得益于贴图描述的简单强大.通过之前的学习及参看相关例子,我们可以发现,在XML布局文件中,不管是窗体背景还是控件,都添加了对应的图片资源以此来美化界面.而 ...
- 学习笔记TF049:TensorFlow 模型存储加载、队列线程、加载数据、自定义操作
生成检查点文件(chekpoint file),扩展名.ckpt,tf.train.Saver对象调用Saver.save()生成.包含权重和其他程序定义变量,不包含图结构.另一程序使用,需要重新创建 ...
- OpenLayers学习笔记(一)—在线加载谷歌影像地图&离线加载本地瓦片地图
实现根据在线离线判断加载地图, 在线加载谷歌影响地图, 离线加载本地瓦片地图 作者: 狐狸家的鱼 Github: 八至 html代码 <div id="map" tabind ...
- Away3D引擎学习笔记(一)资源加载解析块
前文:Away3D断断续续用了一段时间了,三维相关的很多算法,计算转换还是有点绕,整理些自己觉得还有点意思东西,希望大家有用. 三维开始,Away3D构架你场景那几行代码各处都有,这里就不copy了, ...
随机推荐
- ZDog:简单便捷好玩的的3D设计和动画制作库
各位老铁,我灰太狼又又又回来了,嘿嘿!!!!最近在忙所以有日子没写博客了,今天带大家看个好玩的东西 这个东西是今天偶尔看到的,是啥呢,难道是漂亮的小姐姐吗?当然是......不可能的了,这个东西其实就 ...
- 天气预报APP(1)
一个天气预报APP至少应该具备以下功能: *可以罗列出全国所有的省.市.县: *可以查看全国任意城市的天气信息: *可以自由的切换城市,去查看其他城市的天气: *提供手动更新以及后台自动更新天气的功能 ...
- 一文了解:Redis的AOF持久化
Redis的AOF持久化 每当Redis-Server接收到写数据时,就把命令以文本形式追加到AOF文件里,当重启Redis服务时,AOF文件里的命令会被重新执行一次,重新恢复数据.当AOF过大时将重 ...
- 从原理层面掌握@ModelAttribute的使用(使用篇)【一起学Spring MVC】
每篇一句 每个人都应该想清楚这个问题:你是祖师爷赏饭吃的,还是靠老天爷赏饭吃的 前言 上篇文章 描绘了@ModelAttribute的核心原理,这篇聚焦在场景使用上,演示@ModelAttribute ...
- Mybatis框架(8)---Mybatis插件原理
Mybatis插件原理 在实际开发过程中,我们经常使用的Mybaits插件就是分页插件了,通过分页插件我们可以在不用写count语句和limit的情况下就可以获取分页后的数据,给我们开发带来很大 的便 ...
- 通知神器——java调用钉钉群自定义机器人
创建群自定义机器人 在指定钉钉群(或者随便拉两个人建个群,然后把别人T出去)的群设置里选择 群机器人 -> 自定义,如图: 然后,添加机器人,设置名字,添加成功时如下图: 其中webhook非常 ...
- Linux 终端命令格式
Linux 终端命令格式 一.目标 了解终端命令格式 知道如何查阅终端命令帮助信息 二. 终端命令格式 command [-options] [parameter] 说明: command:命令名,相 ...
- 我是如何学习写一个操作系统(二):操作系统的启动之Bootloader
前言 今天本来的任务看书和把之前写的FragileOS整理一下,但是到现在还在摸鱼,书也只看一点.后来整理了一下写这个系列的思路,原本的目的是对操作系统原理性的学习和对之前写的一个玩具型操作系统的回顾 ...
- springboot中springAOP的使用
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...
- UVA10831题解
Gerg's Cake Gerg is having a party, and he has invited his friends. p of them have arrived already, ...