DontDestroyOnLoad 不适用于场景?

use*_*254 1 c# unity-game-engine

我需要在场景上应用DontDestroyOnLoad。这可能吗?

当进入另一个场景时,我也需要不要打扰场景。这里我正在发送邮件,当单击发送按钮时,它会在邮件服务器中进行身份验证,此时我的场景空闲意味着不会响应任何内容,直到返回到来自邮件服务器的响应,所以当时我在场景中显示一个加载栏。这不是执行过程。整个场景都挂起,直到来自邮件服务器的响应,那么如何解决这个问题?

 void  Awake()
{
      DontDestroyOnLoad(this.gameObject);
}
Run Code Online (Sandbox Code Playgroud)

pet*_*ete 5

在阅读了这么多非答案后,我终于在 Unity 论坛中找到了答案。DontDestroyOnLoad 仅当相关游戏对象位于“根级别”(即位于场景下方,而不是嵌套在任何其他对象下方)时才有效。文档中没有提到这一点。

  • 3个小时后,这就是我的答案。unity 2020.3 文档没有提到这一点,但这就是它的工作原理。 (3认同)