Проблема ContentLoadException - PullRequest
       2

Проблема ContentLoadException

0 голосов
/ 20 июля 2011

Я очень новичок в XNA.На самом деле у меня есть книга XNA 4.0 от Курта Джегерса , поэтому я установил VS 2010 и XNA 4.0 и написал свою первую программу.Но эта программа не запустилась успешно, она продолжала отображать файл ContentLoadException не найден.Поэтому я провел небольшое исследование в Интернете и обнаружил, что есть некоторые проблемы с XNA 4.0.Поэтому я удалил VS 2010 и XNA 4.0 и установил VS 2008 (экспресс-издание) и XNA 3.0.Затем я скомпилировал свою первую программу и успешно запустился.

Но теперь я снова сталкиваюсь с той же проблемой с моими новыми проектами.Я пробовал оба синтаксиса:

xx = this.Content.Load<Texture2D>("TitleScreen");
xx = Content.Load<Texture2D>(@"TitleScreen");

И нет проблем с правописанием.Пожалуйста, модов направлять меня.И, пожалуйста, скажите мне, почему я снова и снова сталкиваюсь с этой проблемой.

System Specs :
XP sp3,i3,2gb RAM.

Ответы [ 3 ]

1 голос
/ 20 июля 2011

Контент, который вы хотите загрузить через ContentManager, должен находиться в проекте контента.Представьте на мгновение, что это выглядит так:

Mygame.Content> SomeFolder> textureName

Вы бы использовали content.Load<Texture2D>("SomeFolder/textureName"), чтобы добраться до него.Если это было в корне проекта Content, content.Load<Texture2D>("textureName") будет работать.Если (и с тех пор) это не так, есть 2 вещи, которые нужно проверить

  1. Щелкните правой кнопкой мыши по текстуре и перейдите в свойства.Посмотрите на свойства AssetName.Это то, что вы используете для загрузки через Content Manager.Попробуйте использовать любое имя.
  2. Корневой каталог, в котором просматривает Content Manager, - «Content».Посмотрите на Content.RootDirectory и посмотрите, что это.Если это не «Контент», измените его на это.Это также может сработать.
0 голосов
/ 29 января 2013

Существует известная проблема с ContentManager, созданная любым другим объектом, кроме конструктора объекта Game по умолчанию, которая вызывает возникшую проблему.

Если вы действительно используете объект ContentManager, отличный от объекта, поставляемого в объекте Game, решение:

Когда вы создаете экземпляр ContentManager, вы должны установить его свойство RootDirectory на

@ "Содержание"

Надеюсь, это поможет

0 голосов
/ 20 июля 2011

Чтобы правильно загрузить контент, вам нужно использовать универсальный метод

ContentManager.Load<T>

Например, если вы пытаетесь загрузить элемент Texture2D, используйте следующий синтаксис:

Texture2D texture = Content.Load<Texture2D>("textureName");

Подробнее о загрузке контента в эта ссылка .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...