【Unity3D入门教程】游戏开发利器UGUI的基本使用方法

前言

UGUI是Unity官方推出的新一代交互系统,与传统的GUI相比,它具有使用灵活、界面美观、支持个性化定制的特点。本文将会进行UGUI使用的简单介绍,与大家一起敲开UGUI开发的大门。

说到底,UGUI还是一种UI系统,目的就是帮助用户更好地与软件进行交互。本文将介绍canvas、image、button等。当学会了使用button和image等控件后,其他的也就可以举一反三地进行自学了。

 

1 Canvas

Canvas是画布的意思,通俗来讲,UGUI的所有控件如button等都要摆放在画布上。在Hierarchy中,button、image等控件都是Canvas的子物体。在Hierarchy中点击Create——UI——Canvas,会生成一个画布,同时生成一个EventSystem。



2 Button

2.1 生成个性化按钮

在Hierarchy中点击Create——UI——Button,会在Canvas下生成一个Button。


该Button有一个image组件和一个Button组件,改变Image组件的Source Image可以改变Button的外观。而我们需要为其选择一个UISprite型图片。


假设我们在Assets目录下已经有了一个图片,名叫music.jpg,我们需要选中它,这时候看到Inspector中如下图。我们需要把Texture Type类型改为Sprite(2D and UI),然后点右下方的“Apply”。


将进过类型转换的music图片拖动到Button控件的Image组件的SourceImage变量上,并点击SetNativeSize。


将Button的子物体Text置为空。


然后就可以看到游戏中如下的按钮了。


重新设置按钮尺寸为width=100,height=100。


可以在Button组件中设置按钮的颜色。如图我们将高亮时设置为黄色,按下时设置为蓝色,按钮无效时设置为灰色。


运行效果如下图。

2.2 为按钮添加事件响应

创建一个脚本MusicButton.cs,并自己写一个OnClick()函数。将脚本绑定在Button上。

using UnityEngine;
using System.Collections;

public class MusicButton : MonoBehaviour {

	// Use this for initialization
	void Start () {
	
	}
	
	// Update is called once per frame
	void Update () {
	
	}

    public void OnClick()
    {
        Debug.Log("按钮被按下了!");
    }
}

点击按钮Button组件的OnClick区的“+”,并把已经绑定了MusicButton.cs脚本的Button对象拖动到如下图的位置。


然后点击NoFunction下拉按钮,选择MusicButton的OnClick即可。


然后运行游戏,点击图标,就能在控制台输出中看到相应的信息。


另一种为按钮添加事件响应的方法是仅仅使用脚本,不使用拖拽的方式。

在上面脚本的基础上添加程序集引用

using UnityEngine.UI;

在Start()函数中添加

transform.GetComponent<Button>().onClick.AddListener(OnClick);

也可以实现同样的效果。


3 Image

在Hierarchy视图中,点击Create——UI——Image,就创建了Image。它也需要一个Sprite类型的图片。


它有一个比较重要的参数是ImageType,其中有四种,最常用的是Simple和Filled。所以,我们以Filled为例,展示image的使用效果。


上述功能非常适合做进度条、血条、时间轴等动态对象。

 

小结

本文详细介绍了UGUI的Button的使用方法,并简略说明了Image、Canvas等的基本用途,相信读者可以举一反三,进行后续的学习。

关于详细学习UGUI的视频教程给大家推荐一下:http://edu.manew.com/course/183




posted @ 2017-01-08 17:56  雁回晴空  阅读(537)  评论(0编辑  收藏  举报