Deactivate gameobjects while loading scene/game

I need a way to prevent GameObjects from running until I’m confident I’ve loaded my game data and it’s all ready to go. For example if I load player data, economy data, map waypoints, etc from disk, I need to ensure those are loaded or instantiated if a new game, before my scene objects begin rendering.

Should I look for a way to iterate all scene objects to de/active them all at once? Or should I update all of my scripts to skip Start/Update calls until some “GameHasLoaded” bool is true?

I would much prefer to have Awake or Start called after I things are loaded properly, and to avoid rendering early, so the deactivation method sounds best to me, unless that’s not recommended?

Sounds like you need to use a Script Execution Order.

Or you can keep track of what has finished loading, and until it’s finished loading you can do something like keep the loading screen on or freeze the player’s movement.