Introduction
.mdl is the model extension of two related families of games. Quake,
released by id Software in 1996, used it for its animated models. Valve built
Half-Life on a heavily modified Quake engine and kept the extension, but replaced the
format with its own skeletal studio model, which the Source engine later extended.
The two formats have nothing in common beyond the extension and their origin, and the first four bytes tell them apart.
Variations
| Format | Variation | About | Open |
|---|---|---|---|
.MDL | Quake model (IDPO) | Quake’s animated model: palette skins inside the file and whole-frame animation. | Open |
.MDL | Studio model (IDST) | Valve’s skeletal model for Half-Life and Source: bones, sequences and hit boxes. | Open |
Quake model (IDPO)
The model format of Quake and the games built on its engine. Animation is stored as whole frames of vertex positions, and the skins, 8-bit images in Quake’s palette, are inside the file.
The file starts with IDPO followed by the 32-bit version number 6.
Studio model (IDST)
Valve’s studio model for Half-Life and the Source engine: a skeleton of bones with meshes attached, animation sequences of bone movements, hit boxes, attachments and textures.
The file starts with IDST. The version that follows is 10 for
Half-Life and from 44 upwards for Source engine games such as Half-Life 2.
Links
Developers
- Quake source code, id Software’s C engine code under the GPL, including the IDPO model loader
- Half-Life SDK, Valve’s code, including the studio model renderer
- Assimp, C++ library that imports dozens of 3D formats, both kinds of MDL among them