DontDestroyOnLoad

该方法可以保证在跳转场景的时候不销毁某个物体。
比如场景A,场景B,场景A中有一个cube,通过在cube上添加脚本DontDestroyOnLoad,使得从A场景跳转到B场景的时候cube依旧在B场景中。这样就带来一个问题,当再次进入A场景的时候便会有两个cube,如此反复导致意外的事情。

解决方法如下:

void Awake()
{

    DontDestroyOnLoad(this);

    if (FindObjectsOfType(GetType()).Length > 1)
    {
        Destroy(gameObject);
    }
}