unity——通过点击按钮进行场景切换

news2025/2/23 18:43:09

前记

通过点击鼠标进行场景切换请参考:

Unity——通过点击鼠标进行场景切换_行秋的博客-CSDN博客通过点击按钮进行场景切换请参考:unity——通过点击按钮进行场景切换_行秋的博客-CSDN博客1.准备两个示例场景 2.点击File—>Build Settings...,将场景添加到视图中,点击Build。选择文件夹进行保存。(建议将文件打包到空的文件夹)3.为场景添加Button(UI)在Hierarchy视图中空白处右键,选择UI—>Button - TextMeshPro。 添加完成后修改合适的位置。 4. 编写代码。新建一个C# Script文件,编写代码如下:可编写不同语句选择是否在切换场景后https://blog.csdn.net/weixin_43042683/article/details/128206777?spm=1001.2014.3001.5502

操作

1.准备两个示例场景

 2.点击File—>Build Settings...,将场景添加到视图中,点击Build。选择文件夹进行保存。(建议将文件打包到空的文件夹

3.为场景添加Button(UI)

在Hierarchy视图中空白处右键,选择UI—>Button - TextMeshPro。

 添加完成后修改合适的位置。

 4. 编写代码。

新建一个C# Script文件,编写代码如下:

可编写不同语句选择是否在切换场景后销毁前场景。

(1)切换场景后销毁前场景

SceneManager.LoadScene(场景的索引);

或者 SceneManager.LoadScene("场景的名字"); //英文双引号

(3)切换场景后不销毁前场景

SceneManager.LoadScene(场景的索引, LoadSceneMode.Additive);

或者SceneManager.LoadScene("场景的名字", LoadSceneMode.Additive);//英文双引号

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//调用UnityEngine中的UI函数
using UnityEngine.UI;
//调用SceneManagement函数
using UnityEngine.SceneManagement;

public class LoadScene : MonoBehaviour
{
    //进行场景切换的函数
    public void Scene1()
    {
        SceneManager.LoadScene(0);//切换场景后销毁前场景
        //SceneManager.LoadScene(0, LoadSceneMode.Additive);//切换场景后不销毁前场景
    }
    public void Scene2()
    {
        SceneManager.LoadScene(1);//切换场景后销毁前场景
        //SceneManager.LoadScene(1, LoadSceneMode.Additive);//切换场景后不销毁前场景
    }
    //退出的函数
    public void myExit()
    {
        Application.Quit();
    }
}

5. 创建空物体,放在Canvas下用来挂载脚本。(其实这个空物体位置在那都行,可自由放置,将脚本加载到空物体上)

 6.选中Button,在Inspector中点击On Click()的"+",根据下图将空物体拖拽。

点击No Function选择脚本中的方法,由于场景1需要切换到场景2,所以选择的是Scene2()方法。 

效果

点击运行,查看效果。

(1)切换场景后销毁前场景

SceneManager.LoadScene(这里填场景的索引);

(2)切换场景后不销毁前场景

SceneManager.LoadScene(这里填场景的索引, LoadSceneMode.Additive);

 

备注

创建另一个场景的按钮,然后绑定脚本的Scene1()方法,就可以实现来回切换啦。

错误1:

UnityException: Build path contains project built with "Create Visual Studio Solution" option, which is incompatible with current build settings. Consider building your project into an empty directory.

原因:你当前的目录包含Visual Studio文件目录

解决办法:新建个文件夹专门用来打包这个程序就行

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网页优化(布局优化、图片优化)

为什么页面优化? 页面扩展灵活提高页面的加载速度提高用户的体验 布局优化-高度自适应 自适应 1.宽高不写 注意:当子元素浮动时,父元素不写高度会引起高度塌陷 2.宽高写%单位 3.使用max-width/min-width/max-height/min-height 高度塌陷 清除高度塌…

Java基础语法纯小白入门

第二天内容: |___01.今日内容概述.mp4 |___02.数据类型转换_自动类型转换.mp4 |___03.数据类型转换_强制类型转换.mp4 |___04.数据类型转换注意事项.mp4 |___05.数据类型转换面试题.mp4 |___06.编码表简单概述.mp4 |___07.Java运算符_算术运算符.mp4 |___08…

【kafka】Timed out waiting for a node assignment

1.概述 在做flink任务的时候,报错 Timed out waiting for a node assignment 详细错误如下 2.源码 在SourceCoordinator中我们调用了start方法启动.启动方法主要做了2件事 创建Enumerator启动Enumerator

Machine Learning机器学习(学习记录)

Machine Learning机器学习 目录Machine Learning机器学习聚类K-Means基本思路k均值算法流程k均值算法的特点k-均值算法的优点:k-均值算法的缺点:sklearn实现KMeansK-Means算法基本思路代码实现K-MeansPython代码实现sklearn实现K-Means参考:聚…

[附源码]Python计算机毕业设计Django小太阳幼儿园学生管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

基于Intel Lake-UP3平台的超声设备方案设计,提供出色的图形和AI性能

超声系统要求 有效的超声系统可加快诊断速度,并帮助医生更快做出更有效的治疗决策。 为此,超声机器要求极高的处理性能和图形渲染效果以提高诊断准确性,并立即获取精确的图像。 类似地,还需要易于移动以适应不断变化的医疗场景和…

p1.第一章 基础入门 -- Python开发环境安装 (一)

1.基础入门 1.1 环境安装 1.1.1 windows环境安装 Python下载地址:https://www.python.org/downloads/ 1.1.1.1 python多版本安装 下载并安装3.6.8 下载Windows x86-64 executable installer,python 3.6.8下载地址:https://www.python.o…

章鱼网络社区治理的4种方式

全长1810字,预计阅读 8 分钟 作者:MiX 2021年10月8日章鱼网络主网启动的时候,创始人 Louis 曾代表核心团队承诺:用3年的时间让章鱼网络转化成一个完全由社区所有,并由社区管理的去中心化协议。 我们认为3年的过渡期是…

【Java】之Java8新特性

Java 基础系列的笔记终于完成了🎉🎉🎉 目录 一、Lambda 表达式 1. Lamdba 表达式概述 2. 使用 Lambda 表达式前后对比 3. 怎样使用Lambda表达式 4. Lamdba表达式总结 二、函数式接口 1. 函数式接口概述 3. Java内置函数式接口 4. 使…

我是怎么从软件测试转到自动化测试岗的?亲身经历分享

相信很多人接触软件测试岗位,都纯功能界面的测试,我也不例外。那个时候是在一广州一家电商公司做测试,做了也有一段时间,熟悉了产品业务流程以及熟练测试工作流程规范之后,效率提高了,工作比较轻松&#xf…

电子电气架构设计需要考虑哪些方面?

当前车辆日益复杂,车联网功能在各个细分领域都在不断增加,而更强大的智能功能也逐步增加。 所有这些高级功能都依赖于线束和控制器才能发挥作用。然而面对日益增加的车辆复杂性和产品开发周期缩短的压力,导致汽车制造商和系统集成商的成本和…

VMware Workstation 12 安装windows_server_2016

步骤: (1)去微软官网去下载windows_server_2016 iso镜像文件,链接:https://www.microsoft.com/zh-cn/evalcenter/download-windows-server-2016 (2)创建新的虚拟机 (3)…

动态规划算法(4)01背包问题

文章目录01背包完整代码滚动数组优化:01背包完整代码上节回顾: 动态规划(3)最大方案数问题 01背包 问题引入: 有n个物品,每个物品的重量分别是 weight[i],每个物品的价值分别是 value[i]。你有…

11场面试无一被拒!Alibaba Java面试参考指南真香

今年基本算是结束了,很多小伙伴都开始准备明年的金三银四了。准备面试肯定是要想办法提升自己的面试能力,这个时候如果还去一昧地提升自己的代码能力对面试是毫无帮助的。大多数人在面试的时候都会遇到以下几种情况(大家可以看看自己中了几个…

Redis深度历险

开篇:授人以鱼不若授人以渔—— Redis 可以用来做什么? 小册的内容范围 并没有涵盖 Redis 全部的内容知识点,比如 Redis 内置的 lua 脚本引擎就完全没有提 到Redis 基础数据结构Redis 有 5 种基础数据结构,分别为:stri…

[2022-12-06]神经网络与深度学习hw11 - 各种优化算法比较

contentshw11 - 优化算法比较写在开头task1题目内容题目思路题目解答题目总结task2题目内容题目思路题目解答题目总结task3题目内容题目思路题目解答题目总结task4题目内容题目思路题目解答题目总结task5题目内容题目解答题目总结task6题目内容题目解答task7题目内容题目解答hw…

Git代码提交规范

Git代码提交规范 1.安装commitizen和cz-customizable npm install -g commitizen4.2.4 npm i cz-customizable6.3.0 --save-dev2.在package.json中进行新增 "config": {"commitizen": {"path": "node_modules/cz-customizable"} }{…

Linux系统移植五:启动开发板并测试

往期文章 Linux系统移植一:移植U-BOOT 添加自己的板子并编译(非petalinux版) Linux系统移植二:生成fsbl引导文件并制作BOOT.bin Linux系统移植三:移植Kernel生成zImage和dtb文件 Linux系统移植四:Petalinu…

链接概念介绍

链接器 为了更好地理解计算机程序的编译和链接的过程,我们简单地回顾计算机程序开发的历史一定会非常有益。计算机的程序开发并非从一开始就有着这么复杂的自动化编译、链接过程。原始的链接概念远在高级程序语言发明之前就已经存在了,在最开始的时候&a…

Ubuntu - 搭建samba服务器

安装samba程序 使用如下命令安装samba sudo apt-get install samba sudo apt-get install smbclient验证是否安装成功,查看samba版本 samba -V配置samba服务器 samba的配置文件所在位置为:/etc/samba/smb.conf,使用vim命令修改配置 sudo…