Писал в прошлом посте вопрос, повторю: почему объекты создаются в Awake? Например, вот: windowManager = newGameObject("WindowManager").AddComponent<WindowManager>(); Вы так же поступили с канвасом в прошлом посте. Почему нельзя просто оставить их на сцене?
Другой вопрос: почему используется static? private static readonly GameObject _ballPrefab;
"Почему нельзя просто оставить их на сцене?" - WindowManager и GameController можно и так и так. Я просто делаю одним из методов.
А у окон есть метод Close, который обращается к WindowManager, и чтобы вручную не закидывать в редакторе в каждое окно ссылку на WindowManager я создаю их в коде.
LevelFactory является static классом, чтобы не создавать его экземпляр, соответственно ссылки на префабы тоже static.
Могу предположить, потому что данный проект делается в одиночку человеком, являющимся в первую очередь программистом. В данном случае все создание объектов через "new GameObject().AddComponent<>()" происходит в классе App, который является чем-то вроде локатора служб приложения (ru.wikipedia.org/wiki/Локатор_служб)
Писал в прошлом посте вопрос, повторю: почему объекты создаются в Awake?
Например, вот:
windowManager = newGameObject("WindowManager").AddComponent<WindowManager>();
Вы так же поступили с канвасом в прошлом посте. Почему нельзя просто оставить их на сцене?
Другой вопрос: почему используется static?
private static readonly GameObject _ballPrefab;
"Почему нельзя просто оставить их на сцене?" - WindowManager и GameController можно и так и так. Я просто делаю одним из методов.
А у окон есть метод Close, который обращается к WindowManager, и чтобы вручную не закидывать в редакторе в каждое окно ссылку на WindowManager я создаю их в коде.
LevelFactory является static классом, чтобы не создавать его экземпляр, соответственно ссылки на префабы тоже static.
Потому что кто-то пытался поиграть в проектирование но проиграл
Могу предположить, потому что данный проект делается в одиночку человеком, являющимся в первую очередь программистом. В данном случае все создание объектов через "new GameObject().AddComponent<>()" происходит в классе App, который является чем-то вроде локатора служб приложения (ru.wikipedia.org/wiki/Локатор_служб)
"Почему нельзя просто оставить их на сцене?" что бы можно было редактировать уровни с сервера