当前位置: 首页 > news >正文

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...作为参数代替场景名参数。

http://www.lryc.cn/news/246248.html

相关文章:

  • 【PTA题目】7-12 N个数求和 分数 20
  • 智能AIGC写作系统ChatGPT系统源码+Midjourney绘画+支持GPT-4-Turbo模型+支持GPT-4图片对话
  • List转string 逗号分隔
  • 手机文件怎么传到电脑?简单方法分享!
  • 计算机基础知识59
  • RK3568基于openharmony3.2版本之MIPI屏幕调试
  • pycharm安装PyQt5及其工具
  • 百度人工智能培训第一天笔记
  • 阿里云ACE认证之国际版与国内版对比!
  • Java 简易版王者荣耀
  • 【Linux】 file命令使用
  • MFC设置单选按钮点击自己可以可选和不可选
  • 【数据结构】二叉树之链式结构
  • 完美的输出打印 SQL 及执行时长[MyBatis-Plus系列]
  • 跨标签页通信的8种方式(下)
  • 笔记二十、使用路由Params进行传递参数
  • K8S----taint、tolerations、label
  • 【双指针】三数之和
  • CH01_适应设计模式
  • 电机工作制
  • qt国际化多语言
  • Java Excel Poi 单元格内置的数据格式
  • 【深入剖析K8s】容器技术基础(三):深入理解容器镜像 文件角度
  • 竞赛选题 题目:基于LSTM的预测算法 - 股票预测 天气预测 房价预测
  • 开源WIFI继电器之源代码
  • NX二次开发UF_CURVE_create_arc_point_point_radius 函数介绍
  • Unsupervised MVS论文笔记(2019年)
  • 2-Python与设计模式--前言
  • 如何判别使用的junit是4还是5
  • C#-创建用于测试的父类StartupBase用于服务注入