什么时候应该使用游戏组件?它们用于什么,它们周围的设计模式是什么?
哪个更好:
拥有背景组件,玩家组件,宇宙飞船组件和敌方组件的各种实例,每个组件负责更新和绘制自己;
在游戏玩法屏幕类中拥有上述所有内容,管理所有内容。
说到游戏界面,game state management example似乎不是很模块化。是否更好地构建类似于示例的内容,我们一次编程整个屏幕而不是可重复使用的零碎,或者使用游戏组件来实现最大的模块化?
答案 0 :(得分:3)
来自MSDN:
游戏组件提供模块化方式 添加功能到游戏。您 通过派生来创建游戏组件 来自的新组件 GameComponent类,或者,如果是 组件加载并绘制图形 内容来自 DrawableGameComponent类。然后是你 添加游戏逻辑和渲染代码 通过覆盖的游戏组件 GameComponent.Update,DrawableGameComponent.Draw 和GameComponent.Initialize。一个游戏 组件是通过游戏注册的 将组件传递给 Game.Components.Add。已注册 组件将有其绘制,更新, 并初始化从中调用的方法 Game.Initialize,Game.Update,和 Game.Draw方法。
谈到这个例子,最好将你的组件分成单独的类。随着项目变得更大,这将使管理变得更加容易。
以下是另一个链接,其中包含有关GameComponent以及如何/何时使用它们的更多信息。