Have Awake called AFTER instantiating multiple GameObjects

Awake() is called on components when a game object immediately after it is instantiated.

I want to instantiate multiple GameObjects but not have their Awake() method called instantly. I want to rather have the Awake() method called after I am finished instantiating all my objects.

Is this possible? And how?

Some ideas :

Instantiate the objects, disable them immediately with SetActive( false ); . When they are all instantiated, loop through and SetActive( true );

OnEnable() is also called when an object becomes active in the hierarchy.

Put your Awake code in a different function eg Initialize(). When all the objects are instantiated, call the function Initialize on each object. This is probably the most ideal way.

… The method to use is Start.

Start will be called immediately before Update on the next frame. Which is after all of the Instantiates are done.