【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游戏引擎宣言:

你是否热爱游戏呢?

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

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


目录
相关文章
|
4月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
伪类:伪类这个叫法源自于它们跟类相似,但实际上并没有类会附加到标记中的标签上。 伪类分为两种(以及新增的伪类选择器): UI伪类:会在HTML元素处于某种状态时(例如:鼠标指针位于连接上),为该元素应用CSS样式。 :hover 结构化伪类:会在标记中存在某种结构上的关系时 例如: 某元素是一组元素中的第一个或最后一个,为该元素应用CSS样式。 :not和:target(CSS3新增的两个特殊的伪类选择器)
335 2
|
7月前
|
机器学习/深度学习 算法 定位技术
Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现裂缝的检测识别(C#代码UI界面版)
本项目基于YOLOv8模型与C#界面,结合Baumer工业相机,实现裂缝的高效检测识别。支持图像、视频及摄像头输入,具备高精度与实时性,适用于桥梁、路面、隧道等多种工业场景。
939 27
|
前端开发 安全 开发工具
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
796 90
【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
|
12月前
|
存储 JSON JavaScript
WEB CAD插件通过上下文对象MxPluginContext修改UI界面的方法
本文介绍了如何使用MxPluginContext动态控制MxCAD项目的UI界面。通过该上下文对象,开发者可以灵活设置UI配置,如控制操作栏显隐、编辑按钮、添加侧边栏等。具体方法包括调用`getUiConfig()`获取并修改`mxUiConfig.json`中的属性,实现界面的定制化。此外,还提供了控制命令行聚焦的功能,解决输入框焦点锁定问题。详细代码示例和效果对比图展示了具体实现步骤,帮助开发者更好地适配项目需求。
|
图形学
unity判断鼠标在不在UI上
在 Unity 中,判断鼠标是否在 UI 上主要依赖事件系统和射线检测机制。Unity 的事件系统负责处理输入事件,GraphicRaycaster 组件用于检测射线与 UI 元素的相交情况。通过 `EventSystem.current.IsPointerOverGameObject()` 方法可轻松判断鼠标是否在 UI 上。对于移动端,使用 `EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId)` 来判断触摸是否在 UI 上。代码实现简单且高效。
|
移动开发 前端开发 Java
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
JavaFX是Java的下一代图形用户界面工具包。JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序。 JavaFX允许开发人员快速构建丰富的跨平台应用程序,允许开发人员在单个编程接口中组合图形,动画和UI控件。本文详细介绍了JavaFx的常见用法,相信读完本教程你一定有所收获!
12962 5
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
|
开发框架 JavaScript 前端开发
HarmonyOS UI开发:掌握ArkUI(包括Java UI和JS UI)进行界面开发
【10月更文挑战第22天】随着科技发展,操作系统呈现多元化趋势。华为推出的HarmonyOS以其全场景、多设备特性备受关注。本文介绍HarmonyOS的UI开发框架ArkUI,探讨Java UI和JS UI两种开发方式。Java UI适合复杂界面开发,性能较高;JS UI适合快速开发简单界面,跨平台性好。掌握ArkUI可高效打造符合用户需求的界面。
652 8
|
5月前
|
机器学习/深度学习 人工智能 图形学
卓伊凡的第一款独立游戏-详细介绍游戏开发引擎unity-以及详细介绍windows和mac的安装步骤【01】
卓伊凡的第一款独立游戏-详细介绍游戏开发引擎unity-以及详细介绍windows和mac的安装步骤【01】
508 9
|
5月前
|
小程序 PHP 图形学
热门小游戏源码(Python+PHP)下载-微信小程序游戏源码Unity发实战指南​
本文详解如何结合Python、PHP与Unity开发并部署小游戏至微信小程序。涵盖技术选型、Pygame实战、PHP后端对接、Unity转换适配及性能优化,提供从原型到发布的完整指南,助力开发者快速上手并发布游戏。
|
图形学 C#
超实用!深度解析Unity引擎,手把手教你从零开始构建精美的2D平面冒险游戏,涵盖资源导入、角色控制与动画、碰撞检测等核心技巧,打造沉浸式游戏体验完全指南
【8月更文挑战第31天】本文是 Unity 2D 游戏开发的全面指南,手把手教你从零开始构建精美的平面冒险游戏。首先,通过 Unity Hub 创建 2D 项目并导入游戏资源。接着,编写 `PlayerController` 脚本来实现角色移动,并添加动画以增强视觉效果。最后,通过 Collider 2D 组件实现碰撞检测等游戏机制。每一步均展示 Unity 在 2D 游戏开发中的强大功能。
1210 6

热门文章

最新文章