XNA - Использование игровых компонентов - PullRequest
4 голосов
/ 01 декабря 2010

Когда следует использовать игровые компоненты?Для чего они используются, каков шаблон дизайна вокруг них?

Что лучше:

  • Наличие фонового компонента, компонента игрока, компонента космического корабля и различныхэкземпляры вражеского компонента, каждый из которых отвечает за обновление и рисование самого себя;

  • Наличие всего вышеперечисленного внутри класса игрового экрана, который управляет всем.

Что касается экрана игрового процесса, пример управления состоянием игры не выглядел очень модульным.Лучше ли структурировать вещи, как в примере, где мы программируем целые экраны сразу, а не многократно используемые фрагменты, или используем игровые компоненты для достижения максимальной модульности?

1 Ответ

3 голосов
/ 01 декабря 2010

От MSDN :

Игровые компоненты обеспечивают модульный способ добавления функциональности в игру.Вы создаете игровой компонент, получая новый компонент либо из класса GameComponent, либо, если компонент загружает и рисует графический контент, из класса DrawableGameComponent.Затем вы добавляете игровую логику и код рендеринга в игровой компонент, переопределяя GameComponent.Update, DrawableGameComponent.Draw и GameComponent.Initialize.Игровой компонент регистрируется в игре, передавая компонент Game.Components.Add.Зарегистрированный компонент будет иметь методы рисования, обновления и инициализации, вызываемые из методов Game.Initialize, Game.Update и Game.Draw.ваши компоненты в отдельных классах.Это облегчит управление по мере роста вашего проекта.

Вот еще одна ссылка с дополнительной информацией о GameComponent и как / когда их использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...