UNPKG

mdx-m3-viewer

Version:

A browser WebGL model viewer. Mainly focused on models of the games Warcraft 3 and Starcraft 2.

50 lines (45 loc) 1.5 kB
import BinaryStream from '../../common/binarystream'; import IndexEntry from './indexentry'; /** * A region. */ export default class M3ParserRegion { version: number; unknown0: number; unknown1: number; firstVertexIndex: number; verticesCount: number; firstTriangleIndex: number; triangleIndicesCount: number; bonesCount: number; firstBoneLookupIndex: number; boneLookupIndicesCount: number; unknown2: number; boneWeightPairsCount: number; unknown3: number; rootBoneIndex: number; unknown4: number = 0; unknown5: Uint8Array | null = null; constructor(reader: BinaryStream, version: number, index: IndexEntry[]) { this.version = version; this.unknown0 = reader.readUint32(); this.unknown1 = reader.readUint32(); this.firstVertexIndex = reader.readUint32(); this.verticesCount = reader.readUint32(); this.firstTriangleIndex = reader.readUint32(); this.triangleIndicesCount = reader.readUint32(); this.bonesCount = reader.readUint16(); this.firstBoneLookupIndex = reader.readUint16(); this.boneLookupIndicesCount = reader.readUint16(); this.unknown2 = reader.readUint16(); this.boneWeightPairsCount = reader.readUint8(); this.unknown3 = reader.readUint8(); this.rootBoneIndex = reader.readUint16(); if (version > 3) { this.unknown4 = reader.readUint32(); } if (version > 4) { this.unknown5 = reader.readUint8Array(8); } } }