Xna:PNGファイルからのTexture2D


9

私はタイルベースのゲームを作成しており、タイルセットのサポートに取り組んでいます。Texture2Dが選択されたPNGファイルとして設定されるようにしようとしています。画像をコンテンツパイプラインに読み込むと問題なくこれを行うことができますが、レベルエディターはコンテンツパイプラインにアクセスできないユーザーによって使用されます。これを行うにはどうすればよいですか?

回答:



4

ラージのために少し遅れましたが、他の誰にとっても...

        string PictureLocation = @"D:\PictureName.png";
        Texture2D Newtexture =  LoadPicture(PictureLocation);

        string PictureDestination = @"D:\NewPictureName.png";
        SavePicture(PictureDestination, Newtexture);

    public static Texture2D LoadPicture(string Filename)
    {
        FileStream setStream = File.Open(Filename, FileMode.Open);
        Texture2D NewTexture = Texture2D.FromStream(graphicsDevice, setStream);
        setStream.Dispose();
        return NewTexture;
    }

    public static void SavePicture(string Filename, Texture2D TextureToSave)
    {
        FileStream setStream = File.Open(Filename, FileMode.Create);
        StreamWriter writer = new StreamWriter(setStream);
        TextureToSave.SaveAsPng(setStream, TextureToSave.Width, TextureToSave.Height);
        setStream.Dispose();
    }

PNGとJPEGを読み込み、新しい場所に保存します(サポートされているのはそれらだけですが、それで十分でしょう)。

これが同様の問題を持つ他の誰かを助けることを願っています。Stoort。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.