-1

初めてのゲームをマーケットプレイスに提出する準備ができたところですが、この問題に遭遇しました。

今日、私の XAP ファイルが非常に小さいことに気付きました。(約 350kb) 今日、すべてのコンテンツ (テクスチャ、サウンド、フォント) のビルド アクションを、以前に設定されていた「コンパイル」ではなく「コンテンツ」に設定する必要があることを読みました。それらをすべて「コンテンツ」設定に設定すると、「「ファイル名」の読み込み中にエラーが発生しました。ファイルが見つかりません」というメッセージが表示されます。

ビルドアクション以外は何も変更していませんが、すべてのファイルが見つからないことを確認しました。ビルド アクションを変更した後、ロード ステートメントを変更する必要があるものはありますか? 現在、私の負荷ステートメントは次のようになっています。

font = content.Load<SpriteFont>("menufont");

また

ShipTexture = ScreenManager.Game.Content.Load<Texture2D>("Jet");

参考までに、GameStateManagement サンプルを使用してゼロからゲームを構築しました。

助けてください。ありがとう。

4

2 に答える 2

3

どこで読んだかわかりませんが、そうではありません。

ContentManagerようなオブジェクトは、ファイルGame.Contentを探すようにプログラムされていxnbます。これらは、.png、.wavなどのソースファイルからコンパイルContentする必要があります。ソースファイルをXAPに直接コピーするように設定するTitleContainer.OpenStreamと、通常のファイルではなく、で開いて使用するContent.Load必要があります。ファイルになりxnbます。

XAPファイルが不思議なほど小さい場合は、XAPがパッケージ全体でZIP圧縮を使用していることが原因である可能性があります。bin\Debugまたはbin\Releaseフォルダの「Content」フォルダをチェックして、圧縮されていないフルサイズを確認してください。

于 2012-05-01T01:00:34.487 に答える
1

Compileではなく、に設定する必要がありContentます。Build Action: Compileこれは、XNAコンテンツとして.xnbファイルに処理され、ContentManager.Load<T>呼び出しからアクセスできることを意味します。Build Action: Contentあなたのコンテンツがコンパイルされることをもたらさない何か他のものです。そのままコピーされるか無視されますが、どちらの方法でもアセットはから利用できませんContentManager

于 2012-05-01T00:58:39.013 に答える