示例#1
0
        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]);
            }
        }
示例#2
0
 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);
 }