2012-01-15 7 views
1

Я пытаюсь загрузить изображения png в свою игру, но по какой-то причине он не может найти изображения.xna 4.0 и загрузка изображений не удается

Это мой титульный экран, который пытается загрузить изображения:

public TitleScreen(ContentManager contentManager) 
    { 
    titleScreen = contentManager.Load<Texture2D>("gfx\\titleScreen"); 
    bgScreen = contentManager.Load<Texture2D>("gfx\\bgScreen"); 
    arialFont = contentManager.Load<SpriteFont>("Arial"); 
    } 

Здесь я устанавливаю корневой каталог для содержания:

Content.RootDirectory = "Content"; 

Когда моя программа попадает titlescreen, его не удается найти изображение, однако путь к нему верен, и изображения также устанавливаются в Контент и копируются в выходной каталог.

Когда я пытаюсь отладить его, он говорит мне, что не может найти изображение «Содержимое \ gfx \ titleScreen.xnb». По какой-то причине он пытается загрузить файл xnb, есть ли где-нибудь, что я могу изменить, или мне нужно что-то сделать?

ответ

5

В XNA Изображения собраны .xnb файлы и не .png или .jpg

XNA 3,0 || XNA 3.1
Вы добавляете свой Контент содержимого папки в вашем проекте

XNA 4.0
У вас есть Содержание проекта и добавление контента Ссылки в текущем проекте

Также убедитесь, что вы установили свойства изображений: Щелкните правой кнопкой мыши на Content Item -> свойства -> Установить следующий

  • Build Action: Compile
  • Content Importer/Процессор: Texture - XNA Framework (текстуры)
  • Content Importer/Процессор: Sprite Font Описание - XNA Framework (шрифты)
  • Не копируйте
+1

+1, более подробно (и ответил быстрее), чем мой ответ. –

+0

Спасибо, кажется, мой пример, что я следил, это 3.x, и я работаю с версией 4.0, не думал, что там, где так много изменений, как это. – Lex

+0

doh! У меня была та же проблема ... забыл RE-build вместо того, чтобы просто строить. : P – matrixugly

2

В XNA вы обычно загружайте обработанные файлы (xnb файлов). Вы добавили бы контент-проект в свое решение и ссылались на него в своем основном игровом проекте (обычно это настраивается при создании новой игры).

Вы добавляете туда свои файлы (активы). Когда ваша игра построена, строится контент-проект, который обрабатывает ваши активы, производя файлы xnb, чего хочет метод ContentManager.Load.

5

Кроме того, помните о восстановлении решения после добавления нового ресурса в контентный проект.

+0

Это то, что проблема была для меня. Ссылки, должно быть, были испорчены в моем винном управлении версиями. –

Смежные вопросы