「アリーナ」として単一の画像を使用する Xna の 2D トップダウン ゲームがあります。画像は Texture2D として使用され、4096*1050 で、png としては 186kb のみです (グラフィックは今のところ単純なプレースホルダーです)。ビルド時の xnb ファイルは 24 MB です。問題は、テクスチャ サイズを大幅に縮小する方法はないかということです。
前もって感謝します
コンテンツパイプラインによって生成されたXNBファイルには、解凍された画像データが含まれているため、そのサイズは、テクスチャのサイズとビット深度の単純な関数になります。ファイルサイズを小さくしたい場合は、小さいテクスチャを使用するか(つまり、ピクセル数を減らします。テクスチャが1つあるか100であるかは、同じ数のピクセルがまとめて含まれている場合は関係ありません)、または保存するテクスチャ形式を使用します。ピクセルあたりのデータが少なくなります。各テクスチャの[テクスチャフォーマット]オプション(コンテンツプロセッサの下)を変更して、ビット深度を調整できるはずです。
しかし、これが本当に必要かどうか疑問に思います。コメントで指摘されているように、特に問題のアセットがゲームのプレイフィールドである場合、これはそれほど大きな問題にはならないはずです。これは電話ゲームですか?
コンテンツ プロジェクトで PNG を選択することを検討し、[コンテンツ プロセッサ] を展開して、[テクスチャ フォーマット] で [DxtCompressed] を選択します。これにより、XNB が DXT 圧縮でコンパイルされ、サイズが大幅に縮小されます。ただし、品質は多少低下します。それをテストして、あなたの考えを見てください。
デバッグ モードでは、テクスチャ xnb は圧縮されていません。
リリース モードでは、xnb は圧縮されます。
リリース モードで問題が発生することはありません。
;)