The structure is now finished but could be change...
wHiteRabbiT file structure
│
├─ String FileDescription
│
├─ float Total Animation Ticks
│
├─ int32 Number of Materials
│ ├─ String Material Name
│ ├─ String Shader Technique Name
│ │
│ ├─ float3 Ambiant
│ ├─ float3 Diffuse
│ ├─ float Specular
│ ├─ float Glossiness
│ │
│ ├─ float Bounce Coefficient
│ ├─ float Static Friction
│ ├─ float Sliding Friction
│ │
│ └─ int32 Number of TextureMaps
│ └─ String Texture filename
│
├─ int32 Number of Bones
│ ├─ String Bone Name
│ ├─ int32 Bone ID
│ ├─ int32 Parent ID
│ │
│ ├─ float3 Position
│ ├─ float4 Rotation Quaternion
│ ├─ float3 Scale
│ │
│ ├─ int32 Number of Position Keys
│ │ ├─ float Key Time
│ │ ├─ float3 Key Position
│ │ └─ float unused
│ │
│ ├─ int32 Number of Rotation Quaternion Keys
│ │ ├─ float Key Time
│ │ └─ float4 Key Quaternion
│ │
│ ├─ int32 Number of Scale Keys
│ │ ├─ float Key Time
│ │ ├─ float3 Key Scale
│ │ └─ float unused
│ │
│ └─ int32 Number of Childs
│ └─ [Bone]
│
└─ int32 Number of Meshes
├─ String Mesh Name
├─ int32 Object ID in 3DS Scene
├─ int32 Parent ID in 3DS Scene
│
├─ byte First BoneID in Mesh
│
├─ int32 Number of Vertex
│ ├─ float3 Position
│ ├─ float2 Texture Coordinate
│ ├─ float3 Normal
│ ├─ float3 Color
│ └─ int32 Number of Bones
│ ├─ byte Bone ID
│ └─ float Bone Weight
│
├─ int32 Number of SubFaceGroupe
│ ├─ int32 Material ID
│ └─ int32 Number of Polygone
│ ├─ uint32 a:Vertex ID
│ ├─ uint32 b:Vertex ID
│ └─ uint32 c:Vertex ID
│
├─ float3 Position
├─ float4 Rotation Quaternion
├─ float3 Scale
│
├─ int32 Number of Position Keys
│ ├─ float Key Time
│ ├─ float3 Key Position
│ └─ float unused
│
├─ int32 Number of Rotation Quaternion Keys
│ ├─ float Key Time
│ └─ float4 Key Quaternion
│
└─ int32 Number of Scale Keys
├─ float Key Time
├─ float3 Key Scale
└─ float unused




