public class something : MonoBehaviour
{
    LevelGenerator levelGenerator;

    void Start()

    {

        levelGenerator = FindObjectOfType<LevelGenerator>();

    }
}

만약 이렇게 되어있는 스크립트를 



public class something : MonoBehaviour

{

    LevelGenerator levelGenerator;

    public void Init(LevelGenerator lg)

    {

        this.levelGenerator = lg;

    }

}


public class GameManager : MonoBehaviour

{

    public static GameManager Inst.ance;

    [SerializeField] LevelGenerator levelGenerator;

    [SerializeField] Something something;  

   

    void Awake()

    {

        Inst.ance = this;

        something.Init(levelGenerator);

    }

}

이런식으로 싱글톤 매니저에서 SerializeField로 넣어주고, 이걸 실행할 때 something.Init(levelGenerator); 이런식으로 해주는게 의존성 주입이 맞아?

혹은 이 상황에서 싱글톤 쓰는건 별로 좋지않다 이런건 없어?