def parse_chunk_edges(self, chunk): parser = BinaryReader(chunk) edges = [] num_edges = parser.read_unsigned_int32() for i in range(num_edges): vi_1 = parser.read_unsigned_int32() vi_2 = parser.read_unsigned_int32() smooth = bool(parser.read_unsigned_char8()) edges.append({ "vi_1": vi_1, "vi_2": vi_2, "smooth": smooth }) return edges
def parse_chunk_vertices(self, chunk): parser = BinaryReader(chunk) vertices = [] num_vertices = parser.read_unsigned_int32() for i in range(num_vertices): vec3 = parser.read_vec3_float32() has_smoothing = bool(parser.read_unsigned_char8()) vertices.append({ "x": vec3[0], "y": vec3[1], "z": vec3[2], "has_smoothing": has_smoothing }) return vertices