Xna: Texture2D da un file png


9

Sto realizzando un gioco basato su tessere e sto lavorando per il supporto di set di tessere. Sto cercando di farlo in modo che un Texture2D sia impostato come file PNG scelto. Posso farlo senza problemi f Carico l'immagine nella pipeline di contenuti, ma l'editor di livelli verrà utilizzato da persone senza accesso alla pipeline di contenuti. Come procedo a fare questo?

Risposte:



4

Un po 'in ritardo per Raj ma per chiunque altro ...

        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();
    }

Leggere e salvare in una nuova posizione per PNG e JPEG (penso che siano gli unici supportati, ma dovrebbe essere abbastanza buono :).

Spero che questo aiuti chiunque altro con un problema simile. Stoort.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.