public Model(string path) { _stream = MpqManager.GetFile(FixModelPath(path)); Header = new ModelHeader(); Header.Read(_stream); if (Header.OffsetBoundingNormals > 0 && Header.OffsetBoundingVertices > 0 && Header.OffsetBoundingTriangles > 0 && Header.BoundingRadius > 0.0f) { IsCollidable = true; ReadVertices(_stream); ReadBoundingNormals(_stream); ReadBoundingTriangles(_stream); } }
public Model(string path) { uint fileId; uint.TryParse(path, out fileId); _stream = fileId == 0 ? MpqManager.GetFile(FixModelPath(path)) : MpqManager.GetFile(fileId); //if (_stream == null) // required for file list // return; Header = new ModelHeader(); Header.Read(_stream); if (Header.OffsetBoundingNormals > 0 && Header.OffsetBoundingVertices > 0 && Header.OffsetBoundingTriangles > 0 && Header.BoundingRadius > 0.0f) { IsCollidable = true; ReadVertices(_stream, Header.IsMD21); ReadBoundingNormals(_stream, Header.IsMD21); ReadBoundingTriangles(_stream, Header.IsMD21); } }