public MaterialSplitSectionData( SectionHeader header, FramedStream stream )
        {
            BinaryReader reader = new BinaryReader( stream );

            TriangleStrip = reader.ReadUInt32() == 1;
            SplitCount = reader.ReadUInt32();
            MaterialSplits = new MaterialSplit[ SplitCount ];
            FaceCount = reader.ReadUInt32();

            IndexCount = 0;
            for ( UInt16 i = 0; i < SplitCount; ++i )
            {
                MaterialSplits[ i ] = new MaterialSplit( IndexCount, stream );
                IndexCount += MaterialSplits[ i ].VertexCount;
            }

            if ( FaceCount + SplitCount != IndexCount )
                throw new Exception( "Bad model format" );
        }
        public MaterialSplitSectionData(SectionHeader header, FramedStream stream)
        {
            BinaryReader reader = new BinaryReader(stream);

            TriangleStrip  = reader.ReadUInt32() == 1;
            SplitCount     = reader.ReadUInt32();
            MaterialSplits = new MaterialSplit[SplitCount];
            FaceCount      = reader.ReadUInt32();

            IndexCount = 0;
            for (UInt16 i = 0; i < SplitCount; ++i)
            {
                MaterialSplits[i] = new MaterialSplit(IndexCount, stream);
                IndexCount       += MaterialSplits[i].VertexCount;
            }

            if (FaceCount + SplitCount != IndexCount)
            {
                throw new Exception("Bad model format");
            }
        }