Esempio n. 1
0
 private void ParseHeader()
 {
     using (var br = new BinaryReaderX(_stream, true, _byteOrder))
     {
         br.BaseStream.Position = 0;
         _header = br.ReadType <KTXHeader>();
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Decode TGA Header.
        /// </summary>
        /// <param name="reader">Image stream.</param>
        /// <param name="description">Image description.</param>
        public unsafe void DecodeHeader(BinaryReader reader, out ImageDescription description)
        {
            KTXHeader header = ImageHelpers.ReadStruct <KTXHeader>(reader);

            description = new ImageDescription()
            {
                imageFormat = ImageFormat.KTX,
                Width       = Math.Max(1, header.pixelWidth),
                Height      = Math.Max(1, header.pixelHeight),
                Depth       = Math.Max(1, header.pixelDepth),
                MipLevels   = Math.Max(1, header.numberOfMipmapLevels),
                ArraySize   = Math.Max(1, header.numberOfArrayElements),
                Faces       = Math.Max(1, header.numberOfFaces),
                pixelFormat = SupportedFormats.FromOpenGLFormat(ref header),
            };
        }