代码改变世界

Unity 3D 圆形进度条制作

2017-08-23 00:14  WBinaiU3d  阅读(350)  评论(0)    收藏  举报

Unity 3d 制作圆形进度条其实很简单 我就简单的发表下我的心得。我用的5.6.1做的。

如图 首先创建一个(UI里面的)Canvas ,然后Mypanel是UI里面的panel,在他下面我加了俩照片一个text,俩照片: 一个是MyCicle, 另一个是没有改名字的Image(1)。

如图 MyCicle 的Image Type 要改成如图所示。然后Image(1)选着默认的就行,同时Source Image 要用unity自带的 Knob, 两张图片的大小调好,MyCicle的图片要大于Image(1)的 如图说是 正好留出一个圆环。

代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class MyCicleCon : MonoBehaviour
{
float speed=0.1f;
public Transform MyCicle;
public Transform MyCiclesignText;
private float Amout=0;
private float targetAmout = 100;
void Start ()
{

}
void Update ()
{
if (Amout < targetAmout)
{
Amout += speed;
if (Amout > targetAmout)
Amout = targetAmout;
MyCiclesignText.GetComponent<Text>().text = ((int)Amout).ToString() + "%";
MyCicle.GetComponent<Image>().fillAmount = Amout / 100.0f;
}
}
}

然后如下图拖动Gameobject

运行效果如下图: