最近研究了一下三九的图像格式,发现它用了三种存储格式,弄的我花了好久才搞清楚.它的一部分调色板结合到图像文件中去了,而前两代广泛使用的带s*后缀的bmp文件也少了很多.
s9素材方面最大的变化,我想可能就是音频和视频都开始使用压缩格式了,不过最关键的图像它还是以前的256色,虽然存储的格式代代不同,但还是万变不离其宗.而且它专门为图像处理编了一个dll(用了mmx,应该不再使用GDI了),可能是为了更好的渲染效果吧.它也开始全面步入DirectX,虽然从36起,它就有一个dll是专门用DirectSound处理声音,不过好像游戏里面没有用
简要的介绍一下三9的图像文件格式,希望对想利用三9资源的朋友有一点帮助
调色版(P开头的)
第一个双字是调色版总数
之后每1064个字节是不同的调色版,其中前40个是相关的信息,可以忽略,之后即是调色版数据,仍然是bgr格式存放
图像文件(G开头的)
一共三种格式,但仍然没有存放所使用的调色版的信息
第一种(类似于以前的格式):第一个双字是图片总数,从第五个字节开始存放的是图像数据的起始pos,之后即是图像数据,每个图像均有16字节的前导信息,分别是图像数据的长度(包括16字节前导信息),宽,宽(宽存放了两次),高
第二种:第一个双字是该文件的总长度.之后即是图像数据,每个图像数据也有16字节前导信息,格式同上
第三种:同上,只是文件开头包括了调色版文件,接下来就是第二种的数据(但没有总长度那个双字)
一般图像的调色版是递增的,图像文件使用的调色版文件一般与其名字差不多,但不是很有规律.
一些参考
G_still:宝物事件图片
G_ikki:单挑的场景,小人等
G_lbuild:大地图上的建筑
G_units:大地图上的小士兵
|