- 前言
- 其他介绍
- 上一篇笔记
- 一、项目结构
- 二、脚本
- [1]. 场景切换
- [2]. 资源保留
其他介绍在切换场景的时候会删除上一个场景的所有资源,所以需要给需要的游戏对象上挂载脚本,从而保留游戏对象。
微软官方C#函数文档
Unity官方API文档(英文)
Unity官方API文档(中文)
Unity官方用户手册(中文)
Unity游戏蛮牛API文档(中文)
Unity教程-C语言中文网
Unity用户手册-unity圣典
Unity组件手册-unity圣典
Unity脚本手册-unity圣典
上一篇笔记Unity(12)-场景切换
一、项目结构场景1
场景2
二、脚本 [1]. 场景切换项目
添加场景到设置中
场景切换的脚本如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class Change : MonoBehaviour
{
///
/// 切换到场景2
///
public void scene2()
{
SceneManager.LoadScene("Menu2");
}
}
[2]. 资源保留然后在按钮上绑定场景切换的脚本
创建了一个空的资源Player作为需要保留的资源
在Start中使用函数DontDestroyOnLoad(),传入当前挂载对象
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Keep : MonoBehaviour
{
private void Start()
{
DontDestroyOnLoad(gameObject);//在加载新场景时不销毁脚本挂载的对象
//方式二 DontDestroyOnLoad(this.gameObject);
}
}
把脚本挂载到需要保留的资源上
最终效果如下,被脚本挂载的Player对象被放置到了DontDestroyOnLoad中
在场景2中也会存在DontDestroyOnLoad
如果DontDestroyOnLoad没有被删除,那么再切换到其他的场景时里面的资源仍然可以存在。



