Unity 场景切换

Unity场景切换可使用以下方法:

1、SceneManager.LoadScene()方法:

using UnityEngine.SceneManagement;

// 切换到Scene2场景
SceneManager.LoadScene("Scene2");

2、使用SceneManager.LoadSceneAsync()方法异步加载场景,异步加载我们还可以设置进度条:

using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using TMPro;

public class SceneLoader : MonoBehaviour
{
    public Image progressImg; // 进度条UI元素
    public TextMeshProUGUI progressText; // 百分比文本元素

    private void Start()
    {
       
    }

    private IEnumerator LoadSceneAsync(string name)
    {
        AsyncOperation asyncOperation = SceneManager.LoadSceneAsync(name);

        // 禁止场景在加载完成后自动切换
        asyncOperation.allowSceneActivation = false;

        while (!asyncOperation.isDone)
        {
            // 更新进度条的值
            float progress = Mathf.Clamp01(asyncOperation.progress / 0.9f); // 0.9是加载完成时的进度
            progressImg.fillAmount = progress;

            // 更新百分比文本
            int percentage = Mathf.RoundToInt(progress * 100);
            progressText.text = percentage.ToString() + "%";

            // 如果进度达到90%,允许场景切换
            if (progress >= 0.9f)
            {
                //因为在加载完成时,asyncOperation.progress的值可能不会达到100%,因此我们使用0.9作为阈值来判断加载是否完成。
                asyncOperation.allowSceneActivation = true;
            }

            //此处暂停一帧,等待进度条更新完成后进行渲染
            yield return null;
        }
    }


    // 启动异步加载场景的协程
    public void LoadAnotherScene(string name)
    {
        StartCoroutine(LoadSceneAsync(name));
    }
}

这里,我通过一个Image设置进度条,并加一个Text记录进度百分比,并写了个方法调用切换场景方法。我模拟的场景效果如下:

无论使用何种方法,我们都要在Build Setting中把场景加进去。

当我们使用上面两个方法切换场景,其中的参数就是进入这里查询,只有这里有参数对应的场景才能正常切换,此外参数除了用场景名,也可以用上图中场景添加的顺序值,如0,1...作为参数代替场景名参数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/190484.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Go 语言 Printf 函数和格式化动词详解

Printf() 函数可以使用多种格式化动词对输出进行格式化。下面是可以与所有数据类型一起使用的一些通用格式化动词: 通用格式化动词: 以下动词适用于所有数据类型: 动词描述%v以默认格式打印值%#v以 Go 语法格式打印值%T打印值的类型%%打印百…

灯塔的安装

Docker 安装 docker 安装参考:https://docs.docker.com/engine/install/ shell脚本: curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh灯塔安装 mkdir docker-ARL;cd docker-ARL curl https://bootstrap.pypa.io/get-pip.py -o get-pip…

服务器下db(数据库)的执行

1、查看 select * from xxxx(表名) where xxx(列表)1 and.......正常写就行 2、插入 如果你想要在 SELECT INSERT INTO … SELECT 语句中将部分列保持不变,只改变一两列的值,可以在 语句中直接设置目标列的值,而其他列从源表中…

thinkphp最新开发的物业管理系统 缴费管理、停车管理、收费管理、值班管理

物业费,水电燃气费,电梯费,租金,临时收费等多种收费规则完全自定义,账单自动生成,无需人工计算 实时数据互通:一键报事报修,购买车辆月卡,管理家人信息,参加物…

知识的分层:know-what/how/why

知识(knowledge)表示知道某些信息。通常而言,知识是正确的,但不一定是完备的。知识本身有自己的适用范围,特别是工程技术类问题。 根据知识的类型,可分为三类: know-whatknow-howknow-why kno…

个人成长|信奉长期主义,就要多做可积累有复利的事。

哈喽啊,大家好,我是雷工! 最近有个哥们儿吐槽,说他们公司人事找他谈话,要给降工资,他不同意。 过了没几天又说: “定了,全员降薪”。 “你同意了?” “不同意&#xff0…

DL Homework 8

目录 习题5-2 证明宽卷积具有交换性, 即公式(5.13). 习题5-4 对于一个输入为100 100 256的特征映射组, 使用3 3的卷积核, 输出为100 100 256的特征映射组的卷积层, 求其时间和空间复杂度. 如果引入一…

GLP-1 , GLP-1R

-- 6VCB_GLP-1R G_protein, GLP-1 peptidea positive allosteric modulator

Drools 7 JMX Mbean 及Metric 分析

Mbean mbean的打开很简单,使用jmx启动参数: -Dcom.sun.management.jmxremote.port9999 -Ddrools.mbeansenabled -Dcom.sun.management.jmxremote.authenticatefalse -Dcom.sun.management.jmxremote.sslfalse 但通过jconsole能直观看到的东西也很…

Win11安装Docker

一、进入Docker官网 首先先到Docker官网下载最新官方Docker for Windows链接:Docker下载 在官网内可以查看到Docker的开发文档: 根据官网提示,Windows环境下下载Docker必须满足:Docker for Windows requires 64bit Windows 11 Pro…

CSS之弹性盒子Flexible Box

我想大家在做布局的时候,没接触flex布局之前,大家都是用浮动来布局的,但现在我们接触了flex布局之后,我只能说:“真香”。让我为大家介绍一下弹性盒子模型吧! Flexible Box 弹性盒子 在我们使用弹性盒子时&…

linux系统初始化本地git,创建ssh-key

step1, 在linux系统配置你的git信息 sudo apt install -y git//step1 git config --global user.name your_name // github官网注册的用户名 git config --global user.email your_email //gitub官网注册绑定的邮箱 git config --list //可以查看刚才你的配置内容…

redis的集群,主从复制,哨兵

redis的高可用 在Redis中,实现高可用的技术主要包括持久化、主从复制、哨兵和集群,下面分别说明它们的作用,以及解决了什么样的问题。 持久化: 持久化是最简单的高可用方法(有时甚至不被归为高可用的手段)…

HONOR荣耀MagicBook 15 2021款 锐龙版R5(BMH-WFQ9HN)原厂Windows11预装OEM系统含F10智能还原

链接:https://pan.baidu.com/s/1faYtC5BIDC2lsV_JSMI96A?pwdj302 提取码:j302 原厂系统Windows11.22H2工厂模式安装包,含F10一键智能还原,自带所有驱动、出厂主题壁纸、系统属性专属LOGO标志、Office办公软件、荣耀 电脑管家等预装程序 …

相识词设计思路及实现方法

目录 1.业务背景 2.实现方法 第一种: ​编辑 第二种: 3.相关材料 1.业务背景 业务有全文检索功能,然后根据标书的要求需要有近似词的功能,一般近似词需要模型训练之后成为词库,是需要大数据相关人员负责。负责人表示…

【Leetcode合集】1457. 二叉树中的伪回文路径

1457. 二叉树中的伪回文路径 1457. 二叉树中的伪回文路径 代码仓库地址: https://github.com/slience-me/Leetcode 个人博客 :https://slienceme.xyz 给你一棵二叉树,每个节点的值为 1 到 9 。我们称二叉树中的一条路径是 「伪回文」的&am…

2024年最新最全的Jmeter接口测试必会知识点:jmeter连接数据库

jmeter连接mysql数据库 大致步骤如下: 1、下载mysql的jar包放入到jmeter的lib下,然后重启jmeter 2、配置JDBC Connection Configuration 3、配置JDBC Request 4、在请求中引用查询到的结果变量,可以结合计数器取每一个结果值&#xff1a…

RocketMQ 安装部署及应用场景记录

文章目录 前言一、RocketMQ简介1.1 整体架构 二、RocketMQ安装部署2.1 RocketMQ 下载2.2 修改 JVM 参数2.3 启动 NameServer 和 Broker2.4 验证发送和接受消息2.5 停止 NameServer 和 Broker2.6 配置全局环境 三、RocketMQ应用场景3.1 异步处理3.2 应用解耦3.3 流量削峰 前言 …

基于acme免费申请泛域名证书

参考文档:https://github.com/acmesh-official/acme.sh 文章目录 step1: 获取阿里云的ak、skstep2: 安装acmestep3: 安装通配符证书step4: 查看证书step5: 证书的使用step6: 删除证书 step1: 获取阿里云的ak、sk export Ali_Key"LTAI5tG8888888CDoEjLzkE"…

Maxwell安装部署消费到kafka集群

1.上传安装包到linux系统上面 2.解压安装包到安装目录下,并且重命名 [rootVM-4-10-centos package]# tar -zxvf maxwell-1.29.2.tar.gz -C /opt/software/3.配置mysql 增加以下配置 #数据库id server-id 1 #启动binlog,该参数的值会作为binlog的文件…