首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >统一SceneManager加载场景,启动/唤醒不要在加载时运行

统一SceneManager加载场景,启动/唤醒不要在加载时运行
EN

Stack Overflow用户
提问于 2021-05-18 07:16:52
回答 1查看 2.1K关注 0票数 0

我有一个StartupScript,每次加载场景时都要运行它。

当我加载场景1时,脚本就会运行。

当我加载场景2时,脚本就会运行。

当我回到第一幕时,脚本就不运行了。

如何在每次加载场景时强制StartupScript运行?

脚本出现在每个场景中,在预置的StartScriptHolder.上。

我在看SceneManager:也许通过创建和删除命名的场景实例,我可以强制每次生成StartupScript

仅仅为了运行一个脚本,创建和丢弃完整的场景似乎效率很低。

EN

回答 1

Stack Overflow用户

发布于 2021-05-18 07:36:45

我不知道你是怎么处理场景间的交换的。你试过使用来自SceneManager的UnloadSceneAsync吗?(https://docs.unity3d.com/ScriptReference/SceneManagement.SceneManager.UnloadSceneAsync.html)

我正在做一个项目,我必须做同样的事情。我卸载一个场景,如果我再次加载它,我需要再次运行开始功能。

代码语言:javascript
复制
    SceneManager.LoadScene("SceneName", LoadSceneMode.Additive); //Loading the new scene
    SceneManager.UnloadSceneAsync(val); // Unloading current scene

在这种情况下,我要做的是加载新场景的名称和添加模式(这是我的要求,但您可以使用另一种模式加载它。在此之后,我使用了我建议您使用的函数tu,它需要使用场景的ID作为参数。您可以在“生成设置”窗口中找到此ID。BuildSettings窗口

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67581574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档