在c#控制台上加载内容文件夹

时间:2013-01-03 17:42:38

标签: c# xna console

我是新来的,我的项目有问题 我的项目是一个c#控制台游戏,混合了xna游戏 我的项目的问题是,我添加了一个内容文件夹来加载xna精灵等,但每次我运行它,它显示,文件没有找到纹理加载。
我试图查看问题是否是路径,但不是。我认为不会识别内容文件夹,换句话说,它会因为它不存在而受到威胁。 我试图在谷歌搜索,但它一直给我奇怪的结果,
我在这个网站上搜索了解决方案,但这些都不是我想要的 如何让它识别我的内容文件夹,以便能够在其上加载精灵和其他东西?

public class Game : Microsoft.Xna.Framework.Game
{
    public GraphicsDeviceManager graphics;
    public SpriteBatch spriteBatch;

    public Game()
    {
        graphics = new GraphicsDeviceManager(this);
        graphics.PreferredBackBufferWidth = 640;
        graphics.PreferredBackBufferHeight = 480;
        graphics.IsFullScreen = false;
        Content.RootDirectory = "Content"; 
    }

    protected override void Initialize()
    {
        base.Initialize();
    }

    protected override void LoadContent()
    {
        spriteBatch = new SpriteBatch(GraphicsDevice);
        Program.TestPlayer = Content.Load<Texture2D>("characters/blue"); //Here is where gives the error
        Program.Tiles = Content.Load<Texture2D>("tiles"); //this gives error if the above script is commented.
    }

    protected override void UnloadContent()
    {

    }

    protected override void Update(GameTime gameTime)
    {
        switch (Procedures.gmode)
        {
            case GameMode.ExplorationMode:
                Exploration.ExplorationMode();
                break;

            default:
                this.EndRun();
                return;
        }
        base.Update(gameTime);
    }

    protected override void Draw(GameTime gameTime)
    {
        GraphicsDevice.Clear(Color.White);
        spriteBatch.Begin();
        switch (Procedures.gmode)
        {
            case GameMode.ExplorationMode:
                Exploration.DrawMap();
                Procedures.player.DrawTamer(spriteBatch);
                break;
        }
        spriteBatch.End();
        base.Draw(gameTime);
    }
}

2 个答案:

答案 0 :(得分:1)

我必须做一些不同的事来解决这个问题,除了......不推荐,有点烦人 我不得不在xna上创建另一个项目,并将内容文件传递给xna文件,然后将内容文件夹移动到我的项目文件夹中。
除了烦人之外,它至少还在起作用。

答案 1 :(得分:0)

听起来问题是某些设置不对。

确保在&#34;内容参考&#34;中提及内容项目。在你的主项目中。

并确保&#34;内容根目录&#34;在内容项目中设置为&#34;内容&#34; (或与您的&#34; Content.RootDirectory =&#39;内容&#39;;&#34;设置为相同)。

通过&#34;我的项目问题,是我添加了一个内容文件夹&#34;听起来你在xna项目中添加了一个普通的文件夹,但是你需要使用一个Content项目,以便编译和引用你的资源。

<小时/> 的修改

根据您的图片,您似乎没有 xna游戏项目 ,但 正常项目 即可。 尝试制作 xna项目 ,然后将游戏文件放在那里,然后将 引用 添加到来自 xna游戏项目 内容项目 (在制作xna游戏项目时,您将自动获得一个新的内容项目,这是一个新的内容项目。在xna游戏项目中,所以你可以使用它而不是旧版本,所以你不必弄乱设置,只需移动你的文件。)