private void WritePalette(BinaryWriter writer) { Color[][] outPaletteEntries = null; int paletteWH = PS2PixelFormatHelper.GetPaletteDimension(PaletteFormat); if (PaletteColorCount == 256) { outPaletteEntries = new Color[PaletteCount][]; // Tile the palette for (int i = 0; i < PaletteCount; i++) { PS2PixelFormatHelper.TilePalette(Palettes[i], out outPaletteEntries[i]); } } else { outPaletteEntries = Palettes; } for (int i = 0; i < PaletteCount; i++) { PS2PixelFormatHelper.WritePixelData(PaletteFormat, writer, paletteWH, paletteWH, outPaletteEntries[i]); } }
private void WritePixels(BinaryWriter writer) { if (UsesPalette) { PS2PixelFormatHelper.WritePixelData(PixelFormat, writer, Width, Height, PixelIndices); for (int i = 0; i < MipMapCount; i++) { int div = 2 * (2 * i); PS2PixelFormatHelper.WritePixelData(PixelFormat, writer, Width / div, Height / div, MipMapPixelIndices[i]); } } else { PS2PixelFormatHelper.WritePixelData(PixelFormat, writer, Width, Height, Pixels); for (int i = 0; i < MipMapCount; i++) { int div = 2 * (2 * i); PS2PixelFormatHelper.WritePixelData(PixelFormat, writer, Width / div, Height / div, MipMapPixels[i]); } } }
private void WritePixels(BinaryWriter writer) { PS2PixelFormatHelper.WritePixelData(RasterInfoStructNode.Tex0Register.TexturePixelFormat, writer, RasterInfoStructNode.Width, RasterInfoStructNode.Height, mPixels); }