uint32 Sig
uint32 Version
uint32 Materials - now 0 (for reading old versions) as materials are in an external xml
uint32 Objects
for each object:
uint32 lenMeshName
char MeshName[lenMeshName]
uint32 lenParentName
char ParentName[lenParentName]
int32 ParentBoneIndex -1 when no parent bone
uint32 ?? multiple of 4096 - 4 or 20
uint32 ?? always 0
float WorldMatrix[16]
float ??
uint32 ??
uint32 v_indexes
float vertex[3][v_indexes]
uint32 ??
float ??[3][count value above] values are small
uint32 ??
float ??[3][count value above] values are small
uint32 ??
float ??[3][count value above] values are small
uint32 ?? uvs?
float ??[3][count value above] last value is either 0 or 1
* no idea from here *
the bones have
2 more uint32 values - so possibily 2 more structures
1 int32 value of -1
24 null bytes
24 other bytes (FF or 7F)
before the next object
attached are 3 examples!
You do not have the required permissions to view the files attached to this post.
I have looked at this format it appears to be using a kind of face table to know how many faces to read before starting a new set of faces.
I have seen other games do this where they have a table before the faces which says read 6 faces for example then go to this offset and read this number of faces.
for example in cat.elu look at offset 0xCBCD
you read 4 bytes null
then 4 bytes number of faces
then read the faces * face count
I have been working with the file
hf_cloth_hood_01.elu
in this file you can clearly see the relationship between the section at
0x7C69
and the faces at
0xDC57
You do not have the required permissions to view the files attached to this post.