In I.G.I. 2: Covert Strike (2003), the MTP (Model-Texture Package) format continues to serve
as the binary EA IFF-85 container bundling 3D models with their associated textures
(same FORM MTP container family as IGI 1).
Clear Distinction from .DAT: In IGI 2, levelN.dat remains a human-readable plain-text
asset manifest. .MTP is a binary package format used to deploy self-contained multi-texture weapon systems
and multi-part character assets.
2. Binary File Layout & Memory Map Diagram
The IGI 2 MTP binary structure encapsulates models, compressed textures, and instance tables:
3. Direct3D 8 Texture Binding Pipeline Diagram
The IGI 2 runtime resolves MTP bindings directly into Direct3D 8 texture stages:
4. Architectural Mechanics & Specifications
In IGI 2, MTP instance definitions map each model to its texture list from the shared
TEXF pool. Because the INST chunk appears before TEXF in file
order, parsers read all chunks first and resolve MODS[modelIdx] and
TEXF[texIdx] names afterward.
5. C++ Struct Definitions
#pragma pack(push, 1)structIgi2MtpInstanceHeader {
uint32_t model_index; // Index into MODS arrayuint32_t texture_count; // Number of assigned texture indices
};
static_assert(sizeof(Igi2MtpInstanceHeader) == 8, "Igi2MtpInstanceHeader must be 8 bytes");
#pragma pack(pop)