我想在我的游戏之上扩展这个类的GUI层。我找不到有关实际使用IComponent,IDrawable系列接口的更多信息。似乎我看过的大部分例子都是开发人员自己处理所有这些问题。
使用这些界面的适当方法是什么?
答案 0 :(得分:0)
将组件添加到组件列表后,xna游戏框架将负责为您调用所有适当的方法。在实践中,没有人真正直接实现接口,他们只使用其中一个内置组件,如DrawableGameComponent(正如@Peter指出的那样)。
Here是关于如何使用它的示例/教程: - )
答案 1 :(得分:0)
如前所述,您应该从DrawableGameComponent
派生您的课程。然后你应该实现
public override void Update(GameTime gameTime)
{
// TODO: Add your update code here
base.Update(gameTime);
}
public override void Draw(GameTime gameTime)
{
// TODO: Add your update code here
base.Draw(gameTime);
}
在其容器(通常是您的DrawableGameComponent
类)构造函数中创建Game1
并在同一位置添加Game.Components
非常重要,否则可能无法正确调用组件方法。
如果您以这种方式管理您的组件,框架会自动调用Initialize
,Update
和Draw
。
GameComponent
s也是如此,但显然没有Draw
方法。