2013-10-09 48 views
0

我正在为XNA/Monogame编程Tower Defense游戏,并且一直很好,直到我遇到了这个异常“FileNotFoundException”(当我得到其中一个时,它已被设置为中断,并且当我继续时它不起作用)。它说它找不到添加的新图像。我把它们放在内容文件夹中,根目录设置为内容。旧图像的工作,但新的图像不会。这是我的Game1.cs(这是我第一次编程非文字游戏,所以它的有点乱(误差在loadcontent功能发生)为什么我的纹理不能在Monogame/XNA中找到?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using Microsoft.Xna.Framework; 
using Microsoft.Xna.Framework.Audio; 
using Microsoft.Xna.Framework.Content; 
using Microsoft.Xna.Framework.GamerServices; 
using Microsoft.Xna.Framework.Graphics; 
using Microsoft.Xna.Framework.Input; 
using Microsoft.Xna.Framework.Media; 
//using Microsoft.Xna.Framework.Net; 
using Microsoft.Xna.Framework.Storage; 
using Microsoft.Xna.Framework.Input.Touch; 
using System.Diagnostics; 

namespace KillTheBugs2 
{ 
    /// <summary> 
    /// This is the main type for your game 
    /// </summary> 
    public class Game1 : Microsoft.Xna.Framework.Game 
    { 
     public Texture2D background; 
     public GameTime gameTime; 
     public Vector2 p; 
     Level level = new Level(); 
     public Player player; 
     public Ant ant1; 

     SpriteBatch _spriteBatch; 
     public GraphicsDeviceManager _graphics; 


     public Game1() 
     { 

      _graphics = new GraphicsDeviceManager(this); 

      _graphics.PreferredBackBufferWidth = 2000; 
      //This is wierd i will have to replace 32 with the size in pixels of 1 tile for some reason 
      _graphics.PreferredBackBufferHeight = 32 + 2500; 
      _graphics.ApplyChanges(); 
      IsMouseVisible = true; 
     } 

     /// <summary> 
     /// Allows the game to perform any initialization it needs to before starting to run. 
     /// This is where it can query for any required services and load any non-graphic 
     /// related content. Calling base.Initialize will enumerate through any components 
     /// and initialize them as well. 
     /// </summary> 
     protected override void Initialize() 
     { 

      base.Initialize(); 
     } 

     /// <summary> 
     /// LoadContent will be called once per game and is the place to load 
     /// all of your content. 
     /// </summary> 
     protected override void LoadContent() 
     { 
      _spriteBatch = new SpriteBatch(GraphicsDevice); 
      Content.RootDirectory = "Content"; 
//background, ant, and blueberry bush wont load 
      background = Content.Load<Texture2D>("background"); 

      Texture2D AntTexture = Content.Load<Texture2D>("ant"); 
      ant1 = new Ant(AntTexture, Vector2.Zero, 100, 10, 0.5f); 
      Texture2D BlueberryBushTexture = Content.Load<Texture2D>("blueberrybush"); 
      player = new Player(level, BlueberryBushTexture); 




      // TODO: use this.Content to load your game content here 
     } 

     /// <summary> 
     /// UnloadContent will be called once per game and is the place to unload 
     /// all content. 
     /// </summary> 
     protected override void UnloadContent() 
     { 
      // TODO: Unload any non ContentManager content here 
     } 

     /// <summary> 
     /// Allows the game to run logic such as updating the world, 
     /// checking for collisions, gathering input, and playing audio. 
     /// </summary> 
     /// <param name="gameTime">Provides a snapshot of timing values.</param> 
     protected override void Update(GameTime gameTime) 
     { 
      ant1.Update(gameTime); 
      List<Bug> bugs = new List<Bug>(); 
      bugs.Add(ant1); 

      player.Update(gameTime, bugs); 

      base.Update(gameTime); 
     } 

     /// <summary> 
     /// This is called when the game should draw itself. 
     /// </summary> 
     /// <param name="gameTime">Provides a snapshot of timing values.</param> 
     protected override void Draw(GameTime gameTime) 
     { 

      GraphicsDevice.Clear(Color.CornflowerBlue); 


      // TODO: Add your drawing code here 
      _spriteBatch.Begin(); 
      level.Draw(_spriteBatch, ref background); 
      ant1.Draw(_spriteBatch); 
      player.Draw(_spriteBatch); 
      _spriteBatch.End(); 

      base.Draw(gameTime); 
     } 
    } 
} 
+1

新图片在属性中是否也标记为内容? – user2737037

回答

2

马克的新图像添加到该项目为Build ActionContent在图片的属性菜单,通常在右侧

+0

我在哪里将其更改为内容? – Detinator10

+0

我不介意我改变了它 – Detinator10

+0

谢谢你的存在快速回应 – Detinator10

相关问题