Xna: Texture2D de un archivo png


9

Estoy haciendo un juego basado en mosaicos, y estoy trabajando para el soporte de los mosaicos. Estoy tratando de hacerlo para que un Texture2D se establezca como un archivo PNG elegido. Puedo hacer esto sin ningún problema si cargo la imagen en la canalización de contenido, pero el editor de niveles será utilizado por personas sin acceso a la canalización de contenido. ¿Cómo voy a hacer esto?

Respuestas:



4

Un poco tarde para Raj pero para cualquier otra persona ...

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

Leer y guardar en una nueva ubicación para PNG y JPEG (creo que son los únicos compatibles, pero eso debería ser lo suficientemente bueno :).

Espero que esto ayude a alguien más con un problema similar. Stoort

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.