human-pack

A human pack is a base body as data: its mesh, its joints and its shape targets, converted from MakeHuman's CC0 assets by static-assets' bin/makehuman-pack.ts. It is what the character creator (CHARACTER-DESIGN.md) morphs; human-morph says which targets a body uses and sums them.

A pack is a manifest (hm08.json) plus binaries named by their content hash, so the binaries cache forever and a target is fetched the first time a body asks for it. loadHumanPack(url) reads the manifest, the positions and the body's triangles; pack.target(name) fetches one target (once).

What the manifest holds:

A dense target is int16 xyz for every vertex in order; a sparse one is count uint32 vertex indices followed by count int16 xyz. Multiply by step for metres.