2011-07-20 1 views
0

私はXNAを初めて使用しています。実際に私はXNA 4.0の本はkurt jaegersですので、VS 2010とXNA 4.0をインストールし、私の最初のプログラムを書いています。しかし、そのプログラムは正常に実行されず、ContentLoadExceptionファイルが表示されませんでした。だから私はウェブ上で少しの研究を行い、XNA 4.0にいくつかの問題があることを発見しました。そこでVS 2010 & XNA 4.0をアンインストールし、VS 2008(express edition)& XNA 3.0をインストールしました。それで私は最初のプログラムをコンパイルして、うまくいった。ContentLoadExceptionの問題

しかし、今私は新しいプロジェクトで同じ問題に直面しています。私は両方を試しました構文:

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

スペルミスマッチの問題はありません。モッズが私を案内してください。なぜこの問題が何度も繰り返されているのか教えてください。適切にコンテンツをロードするために

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

あなたのコンテンツはリソースプロジェクトに含める必要があります。最初にインポートしたことを確認してください。コンテンツを魔法のように "ポップ"することはできません。リソースアプリに最初にコンパイルする必要があります。 –

答えて

0

、次の構文を使用し、あなたがにTexture2D要素をロードしようとしている場合には、例えば、一般的な方法

ContentManager.Load<T> 

を使用する必要があります:

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

this linkでコンテンツを読み込む方法の詳細を参照してください。

+0

はい、私は同じことをしましたが、それはその例外を突きました。 – Vishal

+1

プロジェクトの出力パスにContent(デフォルト)の下にTitleScreen.xnbがありますか? –

+0

ここで私はそのファイルを見つけるはずです、私はここで少し新しいですので、すべてのニュアンスを知っていません。 – Vishal

1

ContentManager経由で読み込みたいコンテンツは、コンテンツプロジェクトに存在する必要があります。それはあなたがそれを取得するためにcontent.Load<Texture2D>("SomeFolder/textureName")を使用することになり、この

Mygame.Content> SomeFolder> textureName

のように見える瞬間をふり。コンテンツプロジェクトのルートにあった場合は、content.Load<Texture2D>("textureName")が動作します。それがない場合は、チェックする2つの項目があります。

  1. テクスチャを右クリックし、プロパティに移動します。 AssetNameプロパティを見てください。これはコンテンツマネージャー経由でロードするために使用します。この名前が何であれ使用してください。
  2. Content Managerが検索するルートディレクトリは「コンテンツ」です。 Content.RootDirectoryを見て、それが何であるかを見てください。それが "内容"でないなら、それをそれに変更してください。それも動作する可能性があります。
0

が発生している問題の原因となるデフォルトのゲームオブジェクトコンストラクタ以外でインスタンス化さContentManagers、既知の問題があります。

あなたが実際にContentManagerを使用している場合は、ゲームのオブジェクトに供給以外のオブジェクト、解決策は次のとおりです。

あなたはContentManagerをインスタンス化するとき、あなたはそれが

にRootDirectoryは、プロパティの設定する必要があります@」コンテンツ "

希望します。

関連する問題