不能从其他类调用XNA GraphicsDevice

本文关键字:XNA GraphicsDevice 调用 其他 不能 | 更新日期: 2023-09-27 18:08:50

大家好!我正在XNA/C#中开发一个平台生成器,我遇到了GraphicsDevices的问题。我听说XNA在很多方法中都需要GraphicsDevices,但它只能在LoadContent((之后调用,这对我来说是个问题,因为我的项目中会有很多类。如何获取GraphicsDevice?

提前感谢!

编辑:下面是一个代码示例:http://pastebin.com/vrYhA6MA

不能从其他类调用XNA GraphicsDevice

在您的Game类中,添加GraphicsDeviceManager变量,如下所示:

GraphicsDeviceManager graphics;

现在,在你的游戏构造函数中,初始化如下:

graphics = new GraphicsDeviceManager(this);

在游戏构造函数之后,在Initialize和LoadContent方法中,图形。应加载GraphicsDevice变量。您可以将其传递到方法中并为其提供设置,如DepthStencilState等。

通过任何其他类的构造函数传递对Game对象的引用一直是我喜欢的方法。这样我就可以打电话给

this.Texture = game.Content.Load<Texture2d>("Fred");

例如。