为主的祥助 发表于 2012-3-22 22:33:32

【文件介绍】——IMG 文件解析——

转载自VC _Foolman
问过说可以转载
IMG文件在GTA中是Archive(归档)文件,用于放置大量文件。在这里暂时不讨论GTAIV的IMG文件。除开GTAIV的,IMG文件有两个版本,版本一用于GTA III和VC,版本二用于GTA SA。区分的方法:版本二的IMG文件开头四个字节总是"VER2"。之前曾做过图文的介绍,现在不打算重做,只是介绍一下文件结构。

版本1

版本1的IMG文件没什么好说的,就是许多文件一个一个连起来组成的。版本一的IMG文件都会带有一个对应的DIR文件,这里主要说一下DIR文件。DIR文件由若干以下结构组成

typedef struct{

DWORD dwOffset; // 文件的偏移

DWORD dwSize; // 文件的大小

CHAR szName; // 文件的名称

} dir_file_item;

每一个对应IMG文件中的一个文件。由于IMG文件中的文件都是2KB对齐的,所以DIR文件中的大小和偏移都被缩小了2K倍

版本2
版本2将版本1的IMG和DIR合并为一个IMG文件,原来的DIR文件被放在了IMG文件的开头。整个文件的头部
typedef struct t_img2_header
{
CHAR szSig // "VER2"
DWORD dwFileCount; // 文件数
dir_file_item file_entries;
} img2_header;
文件的偏移量仍然是相对于整个文件。

尼玛,TMD 发表于 2012-5-6 21:04:46

尼玛,TMD 发表于 2012-5-6 21:05:08

表示看不懂

kwanz 发表于 2012-5-9 21:59:44

原来dir是非常标准的数据文件格式啊

蹲街、改大手 发表于 2014-6-12 18:44:39

学学
页: [1]
查看完整版本: 【文件介绍】——IMG 文件解析——