使用Unity3D搭建游戏登录界面(UGUI)

使用Unity 3D搭建一个游戏界面,基于UGUI,容易上手,是学习UI以及按钮点击事件的不错案例。

环境:Unity 5.6.1,Visual studio 2019。

第一步:

打开一个新的Unity3D场景,在Unity Hierarchy界面新建一个canvas,重命名为LoginPanel,接着在LoginPanel下新建两个UI——>Text,重命名为Usernameu以及Password。字体大小以及颜色,在Inspector中自行设置即可。可以在Canvas中的source Image中设置自己喜欢的背景图片。同理,新建第二个Canvas,重命名为MainPanel,这里是为了进行场景跳转,当我们输入用户名,密码之后跳转到游戏场景。
2023-11-19T10:15:18.png

输入框设置

第二步:接下来在Canvas父物体上建立两个输入框,分别对应用户名以及用户密码,这里的输入框重命名为UsernameInput以及PasswordInput,输入框属性可以自定义设置。输入框下有两个子物体,分别是Placeholder以及Text,分别是对应提示信息,以及用户输入信息。
2023-11-19T10:15:34.png

Text设置
第三步:在Canvas父物体上同样新建两个Button,重命名为Login以及Cancel,分别调整大小,布局,最终搭建效果如下。
2023-11-19T10:16:01.png

搭建效果

第四步:脚本控制。在Assets面板下新建folder——>Scripts,新建脚本,LoginClick.cs,使用VS打开进行编辑。

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class LoginClick : MonoBehaviour,IPointerClickHandler
{
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class LoginClick : MonoBehaviour,IPointerClickHandler
{
    public GameObject LoginPanel;
    public GameObject mainPanel;
    public GameObject canvas;
    public GameObject RegisterPanelGo;
    public GameObject MessagePanel;

    void Start () {
        canvas = GameObject.Find("Canvas");
        LoginPanel = GameObject.Find("LoginPanel");
        mainPanel = canvas.transform.Find("MainPanel").gameObject;
        LoginPanel = canvas.transform.Find("LoginPanel").gameObject;
    }
    public void OnPointerClick(PointerEventData eventData){
        LoginPanel.gameObject.SetActive(false);
        mainPanel.gameObject.SetActive(true);
    }
    #region 注册登录界面
    public InputField inputName;
    public InputField inputPaswd;
    public void OnStartButtonCLick()
    {
        if (inputName.text.Trim() == "1" && inputPaswd.text.Trim() == "1")
        {
            Debug.Log("登录成功!");
            RegisterPanelGo.SetActive(false);
        }else{
            Debug.Log("登录失败!");
        }
    }
    public void OnBackButtonClick(){
        Application.Quit();
    }
    public void OnShowMessageButton(){
        MessagePanel.SetActive(true);
    }
    public void AlreadyKnowButton(){
        MessagePanel.SetActive(false);
    }
    #endregion
    public void OnButtonExit(){
        Application.Quit();
    }
}

第五步:

我们将刚才建立的脚本挂载到Login的Button上设置按钮点击事件。在Hierarchy中点击Login Button,在Inspector中看到Button Script下OnClick()点击事件。设置方法如下:
2023-11-19T10:16:16.png

OnClick
1.选择RunTime Only。

2.将Login按钮拖动到Runtime Only下。

3.点击事件选择,LoginClick.OnStartButtonClick方法。

这里的含义就是指当我们点击Login按钮之后会在LoginClick脚本中运行OnStartButtonClick方法。

第六步:

设置GameObject,方法同上,这里我们建立的Text或者是Button都可以称为GameObject,可以在外部实例化。
2023-11-19T10:16:32.png

响应的GameObject拖到框内。
第七步:运行查看效果。

2023-11-19T10:16:40.png

登录界面

MainPanel界面,出现此界面表示成功登录。
这就是如何在Unity 3D中使用UGUI搭建一个简单的游戏界面。如有问题请留言。
2023-11-19T10:16:53.png

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    请登录后查看评论内容