【Unity使用UGUI实现王者荣耀UI界面(二)】加载页面-静音按钮和页面完善

简介: 【Unity使用UGUI实现王者荣耀UI界面(二)】加载页面-静音按钮和页面完善

image.png

效果展示

文章目录


【Unity使用UGUI实现王者荣耀UI界面(二)】加载页面-静音按钮和页面完善

通过Toggle组件实现点击按钮关闭游戏音效的功能,以及Image组件完善加载页面


1. 打开项目

打开我们的Unity Hub,找到你创建的王者荣耀UI界面项目,点击打开

然后静静等待

【这部分最后一次写】


2. Toggle实现打开关闭音效的功能

Toggle组件是开关组件,用于控制某种功能的开关

当然,在此之前,我甚至还去网上找了一个音效当背景音乐

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

提取码:inln

当然,你也可以自己去找。效果是一样的


2.1 Toggle组件演示

  • 右键UI->Toggle,创建一个开关
  • 选中它
  • 按R调整大小,将x,y调整成5/5
  • 如图所示
    image.png
  • 然后给它添加一个脚本,命名为test.cs
  • 编写代码:
using UnityEngine;
using UnityEngine.UI;
public class test : MonoBehaviour
{
    private Toggle testToggle;  // 开关组件
    // Start is called before the first frame update
    void Start()
    {
        testToggle = gameObject.GetComponent<Toggle>();  // 获取开关组件
        testToggle.onValueChanged.AddListener((isOn)=>
        {
            // isOn是开关的逻辑,bool类型
            if (isOn)
            {
                Debug.Log("开关开了");
            }
            else
            {
                Debug.Log("开关关了");
            }
        });
    }
    // Update is called once per frame
    void Update()
    {
    }
}

效果展示:

需要注意一下,我这是先新建了一个项目,然后再演示的

11.gif

好了,你已经大致了解了Toggle组件


2.2 使用Toggle组件实现功能

返回我们原来的项目

在我们的canvas上面创建一个Toggle,重命名为closeAudio

然后看这个

image.png

  • 把Background的img组件设置为我们素材里面的那个audio添加上
  • 还有那个Checkmark,也设置为audio图片
  • 然后在closeAudio下面创建一个AudioS core
    image.png
  • 然后在将背景音乐加进去
    image.png


2.3 编写脚本

在Scripts里面创建一个名字为AudioToggle的脚本,编写代码

using UnityEngine;
using UnityEngine.UI;
public class AudioToggle : MonoBehaviour
{
    private GameObject bgAudio;
    private Toggle bgAudioToggle;
    // Start is called before the first frame update
    void Start()
    {
        bgAudio = transform.Find("bgAudio").gameObject;
    }
    // Update is called once per frame
    void Update()
    {
        bgAudioToggle = gameObject.GetComponent<Toggle>();
        bgAudioToggle.onValueChanged.AddListener(closeAudio);
    }
    /// <summary>
    /// 这个和上面的效果是一样的,区别就是,上面的可以添加参数
    /// 虽然这个也有参数,但是这个参数是开关的类型
    /// </summary>
    /// <param name="isOn"></param>
    void closeAudio(bool isOn)
    {
        if (bgAudioToggle.isOn)
        {
            bgAudio.SetActive(true);
        }
        else
        {
            bgAudio.SetActive(false);
        }
    }
}


2.4 挂载脚本

在工程(project)面板找到这个脚本,选中Toggle组件,拖到最下面的Add comment上面

【搞好不要忘记Ctrl + C保存一下】


2.5 设置锚点

将toggle的锚点设置为右上

image.png


2.6 测试功能

点击倒三角,开始运行,测试一下看看效果

在文章首页可以看到


3. 右上角显示

直接一个img组件完事

UI->Image

选中我们的app图片

image.png

然后设置锚点为左上

image.png


结语

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

Unity游戏引擎宣言:

你是否热爱游戏呢?

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

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


目录
相关文章
|
9天前
「Mac畅玩鸿蒙与硬件43」UI互动应用篇20 - 闪烁按钮效果
本篇将带你实现一个带有闪烁动画的按钮交互效果。通过动态改变按钮颜色,用户可以在视觉上感受到按钮的闪烁效果,提升界面互动体验。
60 19
「Mac畅玩鸿蒙与硬件43」UI互动应用篇20 - 闪烁按钮效果
|
4月前
|
图形学 缓存 算法
掌握这五大绝招,让您的Unity游戏瞬间加载完毕,从此告别漫长等待,大幅提升玩家首次体验的满意度与留存率!
【8月更文挑战第31天】游戏的加载时间是影响玩家初次体验的关键因素,特别是在移动设备上。本文介绍了几种常见的Unity游戏加载优化方法,包括资源的预加载与异步加载、使用AssetBundles管理动态资源、纹理和模型优化、合理利用缓存系统以及脚本优化。通过具体示例代码展示了如何实现异步加载场景,并提出了针对不同资源的优化策略。综合运用这些技术可以显著缩短加载时间,提升玩家满意度。
290 5
|
3月前
|
前端开发 图形学 开发者
【独家揭秘】那些让你的游戏瞬间鲜活起来的Unity UI动画技巧:从零开始打造动态按钮,提升玩家交互体验的绝招大公开!
【9月更文挑战第1天】在游戏开发领域,Unity 是最受欢迎的游戏引擎之一,其强大的跨平台发布能力和丰富的功能集让开发者能够迅速打造出高质量的游戏。优秀的 UI 设计对于游戏至关重要,尤其是在手游市场,出色的 UI 能给玩家留下深刻的第一印象。Unity 的 UGUI 系统提供了一整套解决方案,包括 Canvas、Image 和 Button 等组件,支持添加各种动画效果。
166 3
|
4月前
|
前端开发 开发工具 图形学
PicoVR Unity SDK⭐️三、详解与UI的交互方式
PicoVR Unity SDK⭐️三、详解与UI的交互方式
|
4月前
|
API C# 图形学
Unity3D学习笔记9——加载纹理
Unity3D学习笔记9——加载纹理
48 2
|
4月前
|
前端开发 图形学
Unity精华☀️UI和物体可见性的判断方法
Unity精华☀️UI和物体可见性的判断方法
|
4月前
|
开发者 图形学 前端开发
绝招放送:彻底解锁Unity UI系统奥秘,五大步骤教你如何缔造令人惊叹的沉浸式游戏体验,从Canvas到动画,一步一个脚印走向大师级UI设计
【8月更文挑战第31天】随着游戏开发技术的进步,UI成为提升游戏体验的关键。本文探讨如何利用Unity的UI系统创建美观且功能丰富的界面,包括Canvas、UI元素及Event System的使用,并通过具体示例代码展示按钮点击事件及淡入淡出动画的实现过程,助力开发者打造沉浸式的游戏体验。
116 0
|
4月前
|
前端开发 开发者 开发框架
JSF与Bootstrap,打造梦幻响应式网页!让你的应用跨设备,让用户爱不释手!
【8月更文挑战第31天】在现代Web应用开发中,响应式设计至关重要,以确保不同设备上的良好用户体验。本文探讨了JSF(JavaServer Faces)与Bootstrap框架的结合使用,展示了如何构建响应式网页。JSF是一个基于Java的Web应用框架,提供丰富的UI组件和表单处理功能;而Bootstrap则是一个基于HTML、CSS和JavaScript的前端框架,专注于实现响应式设计。通过结合两者的优势,开发者能够更便捷地创建自适应布局,提升Web应用体验。然而,这种组合也有其局限性,如JSF组件库较小和较高的学习成本等,因此在选择开发框架时需综合考虑具体需求和应用场景。
56 0
|
4月前
|
设计模式 前端开发 开发者
Angular携手Material Design:探索设计模式下的UI组件开发之道——从按钮到对话框的全面实战演示
【8月更文挑战第31天】在现代Web应用开发中,Angular框架结合Material Design设计原则与组件库,显著提升了用户界面的质量与开发效率。本文通过具体代码示例,详细介绍如何在Angular项目中引入并使用Material Design的UI组件,包括按钮、表单和对话框等,帮助开发者快速构建美观且功能强大的应用。通过这种方式,不仅能提高开发效率,还能确保界面设计的一致性和高质量,为用户提供卓越的体验。
34 0
|
4月前
|
图形学
小功能⭐️Unity Button按钮实现鼠标移入移出触发相应事件
小功能⭐️Unity Button按钮实现鼠标移入移出触发相应事件