chunks = {
let chunks = [];
let offset = 12;
for (let i = 0; offset < glbBytes.length; i++) {
chunks[i] = { type: "", length: 0, data: "" };
chunks[i].length = glbBytes
.slice(offset, offset + 4)
.reduce((prev, curr, idx) => {
return prev + curr * 256 ** idx;
}, 0);
chunks[i].type = String.fromCharCode(
...glbBytes.slice(offset + 4, offset + 8)
);
chunks[i].data = chunkParser(
chunks[i].type,
glbBytes.slice(offset + 8, offset + 8 + chunks[i].length)
);
offset += 8 + chunks[i].length;
}
return chunks;
}