By default, Scene Reloading is enabled. This means that when you enter Play Mode, Unity destroys all existing Scene GameObjects and reloads the Scene from disk. The time it takes for Unity to do this increases with the complexity of the Scene, which means that as your Project gets more complex, you have to wait longer between the moment you press the Play button and the moment the Scene fully loads in the Editor.
When you disable Scene Reloading, the process takes less time. This allows you to more rapidly iterate on the development of your project. Instead of reloading the Scene from disk, Unity only resets the Scene’s modified contents. This avoids the time and performance impact of unloading and reloading the Scene. Unity still calls the same initialization functions (such as OnEnable
, OnDisable
and OnDestroy
) as if it were freshly loaded.
It’s important to remember that when you disable Scene Reloading, the time it takes to start your application in the Editor is no longer representative of the start-up time in the built version. Therefore if you want to debug or profile exactly what happens during your project’s start-up time, you should enable Scene Reloading to more accurately represent the true loading time and processes that occur in your built version.