3

bmp (または jpg) ファイルがあります。プログラムで dds ファイルに変換する必要があります (.NET の有無にかかわらず、C++、C# を使用できます。手がかりがあれば、他の言語を試すことができます)。

これを行うソフトウェアがあることは知っていますが、プログラムに統合する必要があります。これは、アプリケーションのより長い操作の一部である必要があります。

ところで、私の質問は次のとおりです。1)これを行うオープンソースプログラムはありますか?そのコードを調べることができますか? 2) このコードを書くのに役立つ Web のどこかにチュートリアルはありますか?

役立つ情報が見つかりませんでした。

ありがとうございました!

4

1 に答える 1

2

コマンド ライン経由で呼び出して使用できるスタンドアロン コンバーターがあると確信しています。XNA はこれらすべてのファイル形式を処理するため、ソース .bmp を開いてから、( Textureクラスを使用して) .dds に保存し直すことができます。

public static void ConvertToDds(
    GraphicsDevice graphicsDevice, string sourcePath, string targetPath)
{
    Texture.FromFile(graphicsDevice, sourcePath)
        .Save(targetPath, ImageFileFormat.Dds);
}

XNA 4.0 で変更されました (これらのメソッドは削除されました)。書き込みにはDDSLibを、読み取りにはTexture2Dを試してください。

public static void ConvertToDds(
    GraphicsDevice graphicsDevice, string sourcePath, string targetPath)
{
    using (var stream = File.Open(sourcePath))
    {
        var texture = Texture2D.FromStream(graphicsDevice, stream);
        DDSLib.DDSToFile(targetPath, true, texture, false); 
    }
}

詳細と例については、リンク先のページを参照してください。ちなみに、.NET なしでは C# を使用できません。

于 2012-10-26T09:05:42.503 に答える