最終更新: teruteruteruchu 2017年11月02日(木) 06:05:10履歴
mate文件格式数据结构解析
按字节顺序来:
0E
大小1bytes,表示文件头标识长度
43 4D 33 44 32 5F 4D 41 54 45 52 49 41 4C
大小14bytes,文件头标识,CM3D2_MATERIAL
xx xx 00 00
大小4bytes,文件版本号
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值1,表示材质名称,全小写
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值2,表示材质名称,原始值
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值3,表示材质类型,比如CM3D2/Toony_Lighted_Outline
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值4,表示材质类型,比如CM3D2__Toony_Lighted_Outline
==================循环数据部分A==================
03
大小1bytes,表示后面标识长度
74 65 78
大小3bytes,tex标识
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,材质的名称
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,材质的分类,固定tex2d(至少样本全是这样,不确定)
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,贴图名称
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,贴图路径
xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx
大小16bytes,每4个字节表示一个单精度数
分别表示材质的偏移x,y和缩放x,y比例
==================循环数据部分A==================
==================循环数据部分B==================
03
大小1bytes,表示后面标识长度
74 65 78
大小3bytes,col标识
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,表示色彩名
xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx
大小16bytes,每4个字节表示一个单精度数
分别表示RGBA(未验证)
==================循环数据部分B==================
==================循环数据部分C==================
01
大小1bytes,表示后面标识长度
66
大小1bytes,f标识,即float浮点
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,表示相应浮点数的代表名称
xx xx xx xx
大小4bytes,表示相应浮点数值,单精度
==================循环数据部分C==================
xx
大小1bytes,结束标识长度
65 6E 64
大小3bytes,end标识
*1 关于用1〜2个字节表示长度,解释见"paths.dat"分析的(*A)
按字节顺序来:
0E
大小1bytes,表示文件头标识长度
43 4D 33 44 32 5F 4D 41 54 45 52 49 41 4C
大小14bytes,文件头标识,CM3D2_MATERIAL
xx xx 00 00
大小4bytes,文件版本号
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值1,表示材质名称,全小写
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值2,表示材质名称,原始值
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值3,表示材质类型,比如CM3D2/Toony_Lighted_Outline
xx
大小1〜2bytes,表示后面字符串的长度(*1)
xx ... xx
大小由前个字节决定,值4,表示材质类型,比如CM3D2__Toony_Lighted_Outline
==================循环数据部分A==================
03
大小1bytes,表示后面标识长度
74 65 78
大小3bytes,tex标识
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,材质的名称
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,材质的分类,固定tex2d(至少样本全是这样,不确定)
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,贴图名称
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,贴图路径
xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx
大小16bytes,每4个字节表示一个单精度数
分别表示材质的偏移x,y和缩放x,y比例
==================循环数据部分A==================
==================循环数据部分B==================
03
大小1bytes,表示后面标识长度
74 65 78
大小3bytes,col标识
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,表示色彩名
xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx
大小16bytes,每4个字节表示一个单精度数
分别表示RGBA(未验证)
==================循环数据部分B==================
==================循环数据部分C==================
01
大小1bytes,表示后面标识长度
66
大小1bytes,f标识,即float浮点
xx
大小1〜2bytes,表示后面数据长度(*1)
xx ... xx
大小由前个字节决定,表示相应浮点数的代表名称
xx xx xx xx
大小4bytes,表示相应浮点数值,单精度
==================循环数据部分C==================
xx
大小1bytes,结束标识长度
65 6E 64
大小3bytes,end标识
*1 关于用1〜2个字节表示长度,解释见"paths.dat"分析的(*A)
コメントをかく