【Unity使用UGUI实现王者荣耀UI界面(三)】登录界面以及加载界面优化

简介: 【Unity使用UGUI实现王者荣耀UI界面(三)】登录界面以及加载界面优化


【Unity使用UGUI实现王者荣耀UI界面(三)】登录界面以及加载界面优化

【只是用来玩玩的,不要太当真】

效果显示:

image.png

1. 加载界面进度100%跳转登录界面

这个功能好做,只需要将上次预留的代码补充上,打开Jindu.cs

类下面初始化两个GameObject的对象

    private GameObject loadPanel; // 加载页面
    private Canvas canvas;          // 画布
    private GameObject loginPanel;  // 登录界面

使用画布是为了只使用一次GameObject的静态方法Find进行查找画布,然后使用画布的transform.Find()方法进行性能节省

然后在Start方法里面对上面的对象赋值

        canvas = GameObject.Find("Canvas").GetComponent<Canvas>();
        loadPanel = canvas.transform.Find("load").gameObject;
        loginPanel = canvas.transform.Find("login").gameObject;

然后在Updata里面添加两行代码:

            // 这里先不写,我们回头写上跳转下一个界面的代码
            loadPanel.SetActive(false);
            loginPanel.SetActive(true);

加到我们上次的最后一个判断


2. 设置视频为背景

2.1 素材准备

首先你得有素材吧

链接:https://pan.baidu.com/s/1_fZtvrVeS11qH8326SmuWA

提取码:68iw

里面有登录的素材和视频

然后你需要把素材导入进项目


2.2 设置背景视频

  1. 创建一个RawImage
    UI->RawImage
  2. 在项目文件夹创建一个纹理
    Create->Render Texture
  3. 然后在RawImage里面添加一个组件:Video Play
  4. 在Video Play里面选择我们的视频
  5. 选择我们的贴图
    image.png
  6. 单击纹理设置纹理属性
  7. 在scene面板调整大小和位置
    image.png


3. 登录界面配置

两个按钮,两个图片,素材里面有,自己配

由于暂时不打算拿微信QQ的API来进行登录,所以我们就简单点

按钮事件都用一个代码了

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class login : MonoBehaviour
{
    private Button bto;
    private GameObject loginPanel;
    private Canvas canvas;
    // Start is called before the first frame update
    void Start()
    {
        canvas = GameObject.Find("Canvas").GetComponent<Canvas>();
        loginPanel = canvas.transform.Find("login").gameObject;
        bto = gameObject.GetComponent<Button>();
        bto.onClick.AddListener(() =>
        {
            System.Threading.Thread.Sleep(2000);
            loginPanel.SetActive(false);
        });
    }
    // Update is called once per frame
    void Update()
    {
    }
}

把按钮和图片的锚点配好就行了

结语

欢迎喜爱Python,Unity(游戏开发引擎)的爱好者,让我们一步步走向大神,成功离得不远,也就两个字,坚持罢了!!

Unity游戏引擎宣言:

你是否热爱游戏呢?

你是否曾经幻想着有一天自己做出一款属于自己的游戏呢?

不要犹豫了,赶快学习吧!


目录
相关文章
|
图形学
unity判断鼠标在不在UI上
在 Unity 中,判断鼠标是否在 UI 上主要依赖事件系统和射线检测机制。Unity 的事件系统负责处理输入事件,GraphicRaycaster 组件用于检测射线与 UI 元素的相交情况。通过 `EventSystem.current.IsPointerOverGameObject()` 方法可轻松判断鼠标是否在 UI 上。对于移动端,使用 `EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId)` 来判断触摸是否在 UI 上。代码实现简单且高效。
|
存储 图形学 开发者
Unity加载AB包
在 Unity 中加载 AssetBundle(AB 包)涉及文件定位、反序列化和内存管理。本地路径可通过 `Application.dataPath` 或 `Application.persistentDataPath` 获取,结合文件名定位 AB 包。远程 URL 则通过网络请求下载。代码示例展示了从本地和远程加载 AB 包的方法,使用 `UnityWebRequest` 和 `WWW` 类进行资源加载和实例化。
|
图形学 缓存 算法
掌握这五大绝招,让您的Unity游戏瞬间加载完毕,从此告别漫长等待,大幅提升玩家首次体验的满意度与留存率!
【8月更文挑战第31天】游戏的加载时间是影响玩家初次体验的关键因素,特别是在移动设备上。本文介绍了几种常见的Unity游戏加载优化方法,包括资源的预加载与异步加载、使用AssetBundles管理动态资源、纹理和模型优化、合理利用缓存系统以及脚本优化。通过具体示例代码展示了如何实现异步加载场景,并提出了针对不同资源的优化策略。综合运用这些技术可以显著缩短加载时间,提升玩家满意度。
1779 6
|
前端开发 图形学 开发者
【独家揭秘】那些让你的游戏瞬间鲜活起来的Unity UI动画技巧:从零开始打造动态按钮,提升玩家交互体验的绝招大公开!
【9月更文挑战第1天】在游戏开发领域,Unity 是最受欢迎的游戏引擎之一,其强大的跨平台发布能力和丰富的功能集让开发者能够迅速打造出高质量的游戏。优秀的 UI 设计对于游戏至关重要,尤其是在手游市场,出色的 UI 能给玩家留下深刻的第一印象。Unity 的 UGUI 系统提供了一整套解决方案,包括 Canvas、Image 和 Button 等组件,支持添加各种动画效果。
1090 3
|
开发者 图形学 开发工具
Unity编辑器神级扩展攻略:从批量操作到定制Inspector界面,手把手教你编写高效开发工具,解锁编辑器隐藏潜能
【8月更文挑战第31天】Unity是一款强大的游戏开发引擎,支持多平台发布与高度可定制的编辑器环境。通过自定义编辑器工具,开发者能显著提升工作效率。本文介绍如何使用C#脚本扩展Unity编辑器功能,包括批量调整游戏对象位置、创建自定义Inspector界面及项目统计窗口等实用工具,并提供具体示例代码。理解并应用这些技巧,可大幅优化开发流程,提高生产力。
1329 1
|
前端开发 开发工具 图形学
PicoVR Unity SDK⭐️三、详解与UI的交互方式
PicoVR Unity SDK⭐️三、详解与UI的交互方式
|
API C# 图形学
Unity3D学习笔记9——加载纹理
Unity3D学习笔记9——加载纹理
179 2
|
前端开发 图形学
Unity精华☀️UI和物体可见性的判断方法
Unity精华☀️UI和物体可见性的判断方法
|
JavaScript
vue + element UI【实战】音乐播放器/语音条(内含音频的加载、控制,事件监听,信息获取,手机网页阴影的去除等技巧)
vue + element UI【实战】音乐播放器/语音条(内含音频的加载、控制,事件监听,信息获取,手机网页阴影的去除等技巧)
805 1
|
存储 JSON 关系型数据库
【unity实战】制作unity数据保存和加载系统——大型游戏存储的最优解
【unity实战】制作unity数据保存和加载系统——大型游戏存储的最优解
930 2