Unity3D 灵巧小知识点 ☀️ | 切换场景后保留上个场景中的游戏物体不被销毁

Posted 呆呆敲代码的小Y

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity3D 灵巧小知识点 ☀️ | 切换场景后保留上个场景中的游戏物体不被销毁相关的知识,希望对你有一定的参考价值。

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:

  • Unity是 实时3D互动内容创作和运营平台 。
  • 包括游戏开发美术建筑汽车设计影视在内的所有创作者,借助 Unity 将创意变成现实。
  • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机平板电脑PC游戏主机增强现实虚拟现实设备。
  • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏

Unity小知识点学习

切换场景后保留上个场景中的游戏物体不被销毁

很多游戏和程序都不止在一个场景中运行,就需要进行场景视图的切换,在Unity中实现场景切换的方法非常简单,几句话就能说清楚

但是在Unity中进行场景交换以后,上一个场景中的所有游戏对象默认都会被销毁

有时候我们并不希望某些用于控制全局的游戏对象或者脚本被销毁

所以要对某个游戏对象通过代码进行控制切换场景时不被销毁

方法也很简单,代码如下:

Object.DontDestroyOnLoad(Object)

只要在脚本中执行一次这个方法,并将不想被切换场景时销毁的对象加进去即可

效果如下:

完整代码在这:

public class UnityTest1 : MonoBehaviour
{
    public Button button1;
    void Start()
    {
        DontDestroyOnLoad(this);
        button1.onClick.AddListener(SwitchScene);
    }
    void SwitchScene()
    {
        SceneManager.LoadScene("Scene2");
    } 
}

这样执行该方法后,游戏对象就不会随着场景切换而销毁了


以上是关于Unity3D 灵巧小知识点 ☀️ | 切换场景后保留上个场景中的游戏物体不被销毁的主要内容,如果未能解决你的问题,请参考以下文章

Unity3D 灵巧小知识点 ☀️ | 快速查找场景中勾选Raycast Target的游戏对象

Unity3D 灵巧小知识点☀️ | Unity 中 使用代码切换天空盒

Unity3D 灵巧小知识点☀️ | Unity 中 怎样切换 天空盒 背景

Unity3D 灵巧小知识点☀️ | Unity脚本生命周期

Unity3D 灵巧小知识点 ☀️ | Unity退出游戏代码

Unity3D 灵巧小知识点 ☀️ | 让Unity支持后台运行