构建2D XNA游戏引擎

时间:2011-12-05 05:34:30

标签: c# xna sprite game-engine

我想在XNA中构建一个引擎,主要用于2D RPG。起初,我开始抽象出一些类并构建一个包含Vector2和Texture2D的Sprite类,并尝试从Sprite类中加载内容。构造函数。但是,这没有用。现在,似乎我必须加载Game类中的所有精灵。 LoadContent方法。有没有办法解决?如果可能的话,我想将实际的游戏内容与引擎的内部工作分开。

1 个答案:

答案 0 :(得分:2)

是的,您可以将ContentManager作为参数传递给constructor,以便在课堂上使用此参数。 e.g。

public class MyClass
{
    ContentManager content;
    Texture2D sprite;

    public MyClass(ContentManager content)
    {
        this.content = content;
    }

    public void LoadSprite(string filename)
    {
        sprite = this.content.Load<Texture2D>(filename);
    }
}

public class Game1
{
    ContentManager content;

    public void LoadContent()
    {
         MyClass myclass = new MyClass(content);
    }

}