HumanFly 2.x object format ============================================================================ The HumanFly objectstructure looks like this: All offsets are in bytes. All words should be handled as unsigned. Vertices are just three signed words. Texturevertices are 2 unsigned words using only the lower byte (lameness, I know). offset | size | discription -----------+------+--------------------------------------------------------- 0 | word | amount of vertices + normal vectors (n) 2 | word | amount of normal vectors (m) 4 | var | vertex table, n-m entries of 3 (x,y,z) words (n-m)*6+4 | var | normal vector table, m entries of (x,y,z) words n*6+4 | word | amount of texturevertices (t) n*6+6 | var | texturevertex table, t entries of 2 (u,v) words n*6+t*4+6 | word | amount of primitives (p) n*6+t*4+8 | var | primitive list, p entries ---------------------------------------------------------------------------- primitive format: offset | size | discription --------+------+------------------------------------------------------------ 0 | word | header: 2 | var | index table, v word indices v*2+2 | var | 1st optional second index/coefficient table, v word entries v*4+2 | var | 2nd optional second index/coefficient table, v word entries header = vertices-1 (v-1)<<10 | shadetype<<13 | pal/texture nr. "<