Here's a convenient helper I wrote that can be used to simplify asynchronous initialization of heavy objects without caring about concurrency or call order: https://gist.github.com/moonshinebot/f63cc09eec1c064a6ba9979f0ae753f9
The pattern scales to multiple lazy properties, and even multiple independent initializers can be used per class (if desired).
#unitask #asyncawait #gamedev #unity3d #unitydev