Esempio n. 1
0
        private void ParseHeader(Stream stream)
        {
            header = new vertexFileHeader_t();

            stream.Position = fileOffsetPosition;

            header.id       = DataParser.ReadInt(stream);
            header.version  = DataParser.ReadInt(stream);  // MODEL_VERTEX_FILE_VERSION
            header.checksum = DataParser.ReadLong(stream); // same as studiohdr_t, ensures sync
            header.numLODs  = DataParser.ReadInt(stream);  // num of valid lods

            header.numLODVertices = new int[MAX_NUM_LODS]; // num verts for desired root lod (size is MAX_NUM_LODS = 8)
            for (int i = 0; i < header.numLODVertices.Length; i++)
            {
                header.numLODVertices[i] = DataParser.ReadInt(stream);
            }

            header.numFixups        = DataParser.ReadInt(stream); // num of vertexFileFixup_t
            header.fixupTableStart  = DataParser.ReadInt(stream); // offset from base to fixup table
            header.vertexDataStart  = DataParser.ReadInt(stream); // offset from base to vertex block
            header.tangentDataStart = DataParser.ReadInt(stream); // offset from base to tangent block
        }