英雄联盟(LOL)的数据结构(一)

英雄联盟(LOL)的数据结构
*.skn

int32

文件类型标识,没有扩展名时可以判断文件类型 

int16

Material数量

int16

Obj数量(不知道什么作用)

char[28]*Material数量

Material数据

int[32]

序号

char[64]

名称

int[32]

开始的顶点位置

int[32]

拥有的顶点数量

int[32]

开始的顶点索引位置

int[32]

拥有的顶点索引数量

int32

顶点索引数量

int32

顶点数量

int16*顶点索引数量

顶点索引,每3个顶点组成一个面

char[52]*顶点数量

顶点数据

float*3

顶点位置: x,y,z

char[4]

4个骨骼索引,每个索引用一个char表示(这里还有疑问,骨骼索引可能还有算法)

float*4

对应4个骨骼索引的权重

float*3

顶点的法线

float*2

顶点的UV坐标

*.skl

char[8]

文件类型标识,没有扩展名时可以判断文件类型 

int32

Obj数量(不知道什么作用)

int32

意义不详(不知道什么作用)

int32

骨骼数量

char[88]*骨骼数量

骨骼数据

char[32]

骨骼名称

int32

父级骨骼的索引

float

缩放

float[3][4]

4×4变换矩阵的前3行数据,最后一行为0,0,0,1

*.anm

char[8]

文件类型标识,没有扩展名时可以判断文件类型 

int32

格式版本

int32

意义不详(不知道什么作用)

uint32

骨骼数量

uint32

动画帧数

uint32

动画帧频(fps)

(char[36]+char[28]*动画帧数)*骼数量

骨骼数据

char[32]

骨骼名称

int32

类型(2:根骨骼,0:普通骨骼)

char[28]*动画帧数

动画帧数据

float

四元数的x

float

四元数的y

float

四元数的z

float

四元数的w

float

位置x

float

位置y

float

位置z






posted @ 2013-10-28 08:42  EnoroF  阅读(1044)  评论(0编辑  收藏  举报