【Unity3D入门教程】Unity3D之GUI浅析「建议收藏」

2022-09-22 09:22:42 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

前言

一款典型的软件都会有交互界面,这些界面包括标签、按钮、拖动条等。Unity3D内置一些基本的GUI命令,可以在屏幕上绘制简单的交互控件。本文主要介绍传统的GUI。而最新加入的UGUI模块将在下一讲中介绍。

1 Label控件

Label控件可以将字符串信息展示在游戏界面上。

代码语言:javascript复制
GUI.Label(new Rect(10,10,100,30),"学习GUI");//将字符串显示在屏幕上

2 Button控件

Button生成一个按钮,可以检测用户鼠标点击。

代码语言:javascript复制
if(GUI.Button(newRect(10,200,100,30),"普通按钮"))
{
   Debug.Log("按下了按钮。");
}
if (GUI.RepeatButton(new Rect(10, 250, 100,30), "连续按钮"))
{
   Debug.Log("正在按按钮!");
}

3 TextField文本输入框

可以输入文字等,如用户名和密码。

代码语言:javascript复制
editName = GUI.TextField(new Rect(150, 40,200, 30), editName, 15);
editPassword = GUI.PasswordField(newRect(150,80,200,30),editPassword,"*"[0],15);

4 Slider滑动条

滑动条上的滑块位置可以表明对应的数值。

代码语言:javascript复制
toolBarValue0 = GUI.VerticalSlider(newRect(200,200,30,100),toolBarValue0,100,0);
toolBarValue1 = GUI.HorizontalSlider(newRect(200,180,100,30),toolBarValue1,0,100);  

5 GUI中绘制贴图

代码语言:javascript复制
GUI.DrawTexture(newRect(10,50,100,80),tex);  //绘制贴图

运行效果

完整脚本

代码语言:javascript复制
using UnityEngine;
using System.Collections;

public class StudyGUI : MonoBehaviour {

    public Texture tex;
    string editName;
    string editPassword;
    float toolBarValue0;
    float toolBarValue1;

    void Start()
    {
        editName = "请输入用户名";
        editPassword = "请输入密码";
        toolBarValue0 = 0;
        toolBarValue1 = 0;
    }


    void OnGUI()
    {
        GUI.Label(new Rect(10,10,100,30),"学习GUI"); //将字符串显示在屏幕上
      
        GUI.DrawTexture(new Rect(10,50,100,80),tex);  //绘制贴图

        //检测按钮
        if(GUI.Button(new Rect(10,200,100,30),"普通按钮")) 
        {
            Debug.Log("按下了按钮。");
        }
        //检测连续按钮
        if (GUI.RepeatButton(new Rect(10, 250, 100, 30), "连续按钮"))
        {
            Debug.Log("正在按按钮!");
        }

        //设置文本输入框
        editName = GUI.TextField(new Rect(150, 40, 200, 30), editName, 15);
        editPassword = GUI.PasswordField(new Rect(150,80,200,30),editPassword,"*"[0],15);
        //垂直和水平滑动条
        toolBarValue0 = GUI.VerticalSlider(new Rect(200,200,30,100),toolBarValue0,100,0);
        toolBarValue1 = GUI.HorizontalSlider(new Rect(200,180,100,30),toolBarValue1,0,100);     
    }
}

小结

本文介绍了几种最简单的GUI控件的使用方法,其他的控件如ToolBar、ScrollView等没有介绍到,感兴趣的读者可以在掌握本文讲述的基本控件的基础上,继续深入研究其他控件。当然现在很多开发中,这种基本的GUI已经用得不多了,UGUI是新一代的交互方式,具有更加灵活的使用情境,值得继续探究。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/169343.html原文链接:https://javaforall.cn

0 人点赞