游戏1.图形设备和图形之间的区别.图形设备



在XNA 4.0中,我的游戏类的GraphicsDevice属性和"graphics"变量的GraphicsDevice属性有什么区别?顺便说一句,"图形"的类型是图形设备管理器。

如果这很重要,我正在使用Visual Studio 2010。

什么都没有。自己试试:

Console.WriteLine(ReferenceEquals(graphics.GraphicsDevice, this.GraphicsDevice));

把它放在像里面一样的地方 LoadContent.您会发现它输出true .它们都指同一个对象。

为了便于阅读,您通常应该使用 Game.GraphicsDevice .


基本行为是GraphicsDeviceManager是一个IGraphicsDeviceService(它提供了一个GraphicsDevice成员)。当您创建 GraphicsDeviceManager 时,它会将自身添加到其构造函数中的Game.Services(请参阅如何将对Game的引用传递到其构造函数中)。

Game从其Services列表中的任何IGraphicsDeviceService设置其GraphicsDevice成员。这样,你可以用你自己的实现IGraphicsDeviceService的类替换GraphicsDeviceManager - 如果你碰巧是疯狂的;)

GraphicsDeviceManager也是一个IGraphicsDeviceManagerGame以类似的方式(通过Game.Services)来管理图形设备的创建。

GraphicsDeviceManager 管理 GraphicsDevice,您不应直接使用 GraphicsDevice。如果需要,可以更改它,以便使用GraphicsDeviceManager.GraphicsDevice属性。

相关内容

  • 没有找到相关文章

最新更新