对象引用未设置为对象#100的实例

本文关键字:#100 实例 对象 设置 对象引用 | 更新日期: 2023-09-27 18:11:09

我知道以前有人问过这个问题,但看起来他们的解决方案对我不起作用,或者我做错了什么。

public class Sprite
{
    private Game m_game;
    private SpriteBatch m_spriteBatch;
    private string m_filename;
    private Texture2D m_texture;
    public Sprite(Game game, SpriteBatch spriteBatch, GraphicsDevice graphicsDevice)
    {
        m_game = game;
        m_spriteBatch = spriteBatch;
        m_texture = new Texture2D(graphicsDevice, graphicsDevice.Viewport.Width, graphicsDevice.Viewport.Height);
    }
    public void LoadSprite(string filename)
    {
        m_texture = m_game.Content.Load<Texture2D>(filename);
    }
}

错误是在LoadSprite当我传递"树"作为文件名时产生的。M_texture不是空的,因为(试图)在构造函数中初始化它。对Content的相同调用。Load是在主循环中使用的,但我想把它移到Sprite类中。

treeTexture = Content.Load<Texture2D>("tree");

这在主循环中工作得很好,因此它显示"tree"文件存在。

有人能看出我做错了什么吗?

对象引用未设置为对象#100的实例

m_game或m_game。内容可能为空