What’s the difference between awake and start ?
Awake is called when the MonoBehaviour is first created. Start is called before the first Update on the MonoBehaviour. All Awakes in a frame are called before all Starts.
Typically Awake is used to do all of the internal set up (much like you would do with a constructor). Start can typically be used to access other MonoBehaviours.