Caching a scene before loading additively?

I have a pause scene set up in my unity project, when the game is paused the pause scene is loaded additively, something like this:


This is resulting in a slight jitter when the pause screen is loaded.

Is it possible to pre-load the pause scene into memory so that unity at least doesn’t have to load up the assetts which could cause it to slow down?

If your scene content is packed into one GameObject you can just Load the scene at start and disable the root-GameObject. All the stuff is there but not used / rendered until you activate the GameObject. When you unpause just deactivate the object again.

You propably need GameObject.SetActiveRecursively to enable / disable all childs of your root GO.