Unity DontDestroyOnLoad

DontDestroyOnLoad:

API解释: 当切换场景时,不销毁当前场景中的对象,之作用于根gameobject,或者根gameobject 上的组件

注意:是不销毁当前场景中的对象,假设A场景的物体O不销毁(O属于A场景),当从场景 A 到 B 的时候,O贯穿始终,但是从B回到A时,就会出现一种情况,即:A场景中原来的O物体 和 不销毁的O'共存,且会重新执行O身上的脚本,比如 awake 、start 方法,而 不销毁的O' 上的方法只会执行一次

这也就是如果只是简单的调用DontDestroyOnLoad,就会出现无限循环。

Destroy:

API解释: 销毁物体,如果是gameobject,会销毁它及它的子物体,如果是组件,只销毁组件,实际的对象销毁总是延迟到当前Update循环之后

你可能感兴趣的:(unity)