https://adamwreed93.medium.com/using-singletons-static-variables-to-create-manager-classes-in-unity-9a4b3eb085f5