The MDL File Format

Cornell University Program of Computer Graphics


The MDL file format has been used for several rendering projects at Cornell University and Indiana University. It is a low-tech format that defines a syntax for storing simple data in text and binary files which are arranged into nested ``chunks.'' It also defines several standard types of data chunks. We have written a standard I/O library in C++ that reads and writes MDL files at the syntactic level and deals with some common chunk types.

When we invented the mdl file format, our goal was to have a simple, practical way of storing models that was fast to read and write, very easy to use in programs, and reasonably space-efficient. We also wanted a somewhat human-readable (well, programmer-readable) text format that would be convenient for small files, and we wanted it to be easy for programs that didn't understand some of the data in a file to skip it. We expected the primary application of the format to be storing models for realistic rendering, including complicated materials and large polygon meshes.

These pages describe the syntax rules of the MDL format, the MDL chunks that we have defined. Several example MDL files are also provided.

Syntax Rules

Chunk Definitions

Example Files