diff --git a/ResourceChecker.cs b/ResourceChecker.cs index aa692ee..681a535 100755 --- a/ResourceChecker.cs +++ b/ResourceChecker.cs @@ -1024,7 +1024,10 @@ private static GameObject[] GetAllRootGameObjects() #else List allGo = new List(); for (int sceneIdx = 0; sceneIdx < UnityEngine.SceneManagement.SceneManager.sceneCount; ++sceneIdx){ - allGo.AddRange( UnityEngine.SceneManagement.SceneManager.GetSceneAt(sceneIdx).GetRootGameObjects().ToArray() ); + //only add the scene to the list if it's currently loaded. + if (UnityEngine.SceneManagement.SceneManager.GetSceneAt(sceneIdx).isLoaded) { + allGo.AddRange(UnityEngine.SceneManagement.SceneManager.GetSceneAt(sceneIdx).GetRootGameObjects().ToArray()); + } } allGo.AddRange(GetDontDestroyOnLoadRoots());