public static GameImage FromTex(TexFileReader reader) { const short x = 0; const short y = 0; using (DisposableStack insurance = new DisposableStack(2)) { GLTexture layer = insurance.Add(reader.ReadImage()); GLTexture palettes = insurance.Add(GLTextureFactory.FromBitmapPalettes(reader.Palettes)); GameImage result = new GameImage(x, y, layer, palettes); insurance.Clear(); return(result); } }
public static GameImage FromTim(TimFileReader reader) { using (DisposableStack insurance = new DisposableStack(3)) { TimImage timImage = insurance.Add(reader.ReadImage()); short x = timImage.ImageHeader.X; short y = timImage.ImageHeader.Y; GLTexture layer = timImage.Layer; GLTexture palettes = insurance.Add(GLTextureFactory.FromBitmapPalettes(reader.Palettes == null ? null : reader.Palettes.Palettes)); GameImage result = new GameImage(x, y, layer, palettes); insurance.Clear(); return(result); } }