利用GUI可以制作进度条,但是NGUI更加方便

我是用的NGUI3.5.3,

先找到NGUI  Slider的预制体,利用自带的UISlider来制作。

主要是利用UISlider的Value来控制进度条。

脚本

 public GameObject BtnGaoLu;
    public UISlider MyUISlider;

    private bool isLoad=false;
    private AsyncOperation async;
    float progress = 0;

    void Awake()
    {
        UIEventListener.Get(BtnGaoLu).onClick = fnChangeSence;
        MyUISlider.alpha = 0;
    }

	// Use this for initialization
	void Start () {

	}

	// Update is called once per frame
	void Update () {
        //绘制进度条,但是由于时间太短,效果不好
        if (isLoad)
        {
            MyUISlider.alpha = 1;
            progress = Convert.ToSingle((async.progress.ToString("f2")));
            if (progress > 0)
            {
                MyUISlider.GetComponent<UISlider>().value = progress+0.8f;
		//此处添加0.8f是因为我只加载到85%就跳转了,为了达到进度条到达100*的效果,所以添加了0.8,是实际情况而定。
                print(progress);
            }
        }
	}

    void fnChangeSence(GameObject obj)
    {

        StartCoroutine(fnLoadSence("Final_Scene"));
    }

    IEnumerator fnLoadSence(string strSenceName)
    {
        isLoad = true;
        async = Application.LoadLevelAsync(strSenceName);
        yield return async;
    }

这里注意使用Convert方法需要添加引用System

将触发按钮盒UISlider拖入公有变量中,运行即可。

实际的效果要根据加载时间来确定,再编辑其中只要第一次加载后,在运行就会非常快,以至于看不到进度条效果,只要发布就好了

Unity3D NGUI制作进度条的更多相关文章

  1. 制作进度条(UISlider)

    怎样判断是否应当使用进度条 用进度条的主要目的是为了用一根管子的充满程度来直观地表示某种数值的百分比,进度条分为可拖动和不可拖动两种. 可拖动进度条和不可拖动进度条的原理几乎是一模一样,唯一的区别是可 ...

  2. 纯CSS3制作进度条源代码

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  3. unity3d NGUI制作角色展示框

    最近在搞赛车漂移,所以一直没有更新博客 现在已经实现圈数检测.复位点检测.反向检测等功能 本来准备写成三篇文章的,太忙了,等过段时间不忙了在写吧 今天有朋友问我3D角色怎么给他固定在一个框里面 这个功 ...

  4. Unity3D NGUI制作的Button放到场景中,按钮从2D变到3D

    通常我们使用Button都是在UI界面,即NGUI的摄像机下,如果想换到场景中,即不让按钮以UI形式显现,而是和场景中的物体一起随着摄像机移动而缩小,放大. 很简单,把Button从NGUi的摄像机中 ...

  5. Unity3D中灵活绘制进度条

    有时我们需要在Unity3D中绘制进度条,如:           或        如果使用4.6版本以下的unity绘制环形的进度条可能需要费点劲.我搜到的大多数方法都是用NGUI插件,但有时只是 ...

  6. Unity3D研究院之异步加载游戏场景与异步加载游戏资源进度条

    Unity3D研究院之异步加载游戏场景与异步加载游戏资源进度条 异步任务相信大家应该不会陌生,那么本章内容MOMO将带领大家学习Unity中的一些异步任务.在同步加载游戏场景的时候通常会使用方法 Ap ...

  7. CSS3制作同心圆进度条

    1.css代码 此处在制作进度条时,是旋转进度条的半圆(红色),背景使用灰白(如果使用红色作为背景,旋转灰白遮罩,在浏览器中可能会有渲染bug) .wrapper{ display:block;pos ...

  8. (转)Unity3D研究院之异步加载游戏场景与异步加载游戏资源进度条(三十一)

      异步任务相信大家应该不会陌生,那么本章内容MOMO将带领大家学习Unity中的一些异步任务.在同步加载游戏场景的时候通常会使用方法 Application.LoadLevel(“yourScene ...

  9. (转)Unity3D游戏开发 NGUI之渐变加载到100%的Loading场景进度条

    NGUI 现有的进度条存在的问题: 进度条跳跃式前进,加载到90%后卡住,突然进入下一个场景.接下来就是解决这个问题. 背景 通常游戏的主场景包含的资源较多,这会导致加载场景的时间较长.为了避免这个问 ...

随机推荐

  1. idea 根据数据库表自动创建持久化类

    一.点击最右边的Database: 二.点击,再点DataSource选择数据库类型,配置数据库信息: 三.打开项目结构,选择,找到你的项目,点击,添加hibernate: 四.如果有现成的cfg.x ...

  2. 编程结构:Promise和Future

    非阻塞模型中Promise,Future 和 Callback一些比较常用的模型: Future表示一个可能还没有实际完成的异步任务结果:实际在编程中,应用future数据结构的时候,你得到并不是一个 ...

  3. java List 排序

    List<Map.Entry<String, String>> infoIds = new ArrayList<Map.Entry<String, String&g ...

  4. struts2中web.xml的配置

    在web.xml</web-app>前添加的<filter></filter>和<filter-mapping></filter-mapping& ...

  5. 强类型DataSet的使用简明教程

    关于弱类型 DataSet的缺点: 无论何时从 DataSet检索值都是以Object类型返回,需要对它进行类型转换: 给其它开发者使用 时无法知道哪些列可用: 运行时才能知道所 有列名,数据绑定麻烦 ...

  6. Python运算符,python入门到精通[五]

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...

  7. 数学 Codeforces Round #291 (Div. 2) B. Han Solo and Lazer Gun

    题目传送门 /* 水题,就是用三点共线的式子来判断射击次数 */ #include <cstdio> #include <cmath> #include <string& ...

  8. SharePoint安全 - SharePoint网站常用页面URL索引

    博客地址 http://blog.csdn.net/foxdave 一. 主要网站内容 首页 /default.aspx /Pages/default.aspx 网站设置 /_layouts/sett ...

  9. 在dom4j中使用XPath

    package com.wzh.test.xpath; import java.io.File; import org.dom4j.Document; import org.dom4j.Documen ...

  10. Android开发 将数据保存到SD卡

    前言: 使用Activity的openFileOutput()方法保存文件,文件是存放在手机空间上,一般手机的存储空间不是很大,存放些小文件还行,如果要存放像视频这样的大文件,是不可行的.对于像视频这 ...