This is the specifications for the model file which is handled by the Game Extractor plugin Viewer_ZIP_PK_SCM_MODL.

Endian Order:Little Endian
Compression:none
Encryption:None


This format is used by the following Games:
Supreme Commander 2 *.scm


This is the format specification information:
 
// HEADER
  4 - Header (MODL)
  4 - Unknown (5)
  4 - Skeleton Offset [-4]
  4 - Number of Skeletons
  4 - Vertex List Offset [-4]
  4 - null
  4 - Number of Vertices
  4 - Triangles Offset [-4]
  4 - Number of Face Indexes (Number Of Triangles = value / 3)
  4 - Information Block Offset [-4]
  4 - Information Block Length [+4]
  4 - Unknown (2)
  12 - Padding to a multiple of 16 bytes, then remove 4 (all (byte) 197)
  
// NAME BLOCK
  4 - Header (NAME)
  X - Name Details
  X - Padding to a multiple of 16 bytes, then remove 4 (all (byte) 197)
  
// SKELETON
  4 - Header (SKEL)
  
  // for each skeleton
    108 - Unknown
  
  X - Padding to a multiple of 16 bytes, then remove 4 (all (byte) 197)
  
// VERTEX LIST
  4 - Header (VTXL)
  
  // for each vertex (68 bytes per entry)
    4 - X Position (float)
    4 - Y Position (float)
    4 - Z Position (float)
    4 - X Normal (float)
    4 - Y Normal (float)
    4 - Z Normal (float)
    
    4 - Unknown Float
    4 - Unknown Float
    4 - Unknown Float
    4 - Unknown Float
    4 - Unknown Float
    4 - Unknown Float
    
    4 - Texture U (float)
    4 - Texture V (float)
    
    4 - Unknown Float
    4 - Unknown Float
    4 - Unknown Float
    
  X - Padding to a multiple of 16 bytes, then remove 4 (all (byte) 197)
  
// TRIANGLES
  4 - Header (TRIS)
  
  // for each triangle
    2 - Face Index 1
    2 - Face Index 2
    2 - Face Index 3
    
  X - Padding to a multiple of 16 bytes, then remove 4 (all (byte) 197)
  
// INFORMATION BLOCK
  4 - Header (INFO)
  X - File Information (author, timestamp, source filename, etc)


Game Extractor is able to read files of this type, as well as files from thousands of other games. To give it a try, download Game Extractor (Basic Version) for free, and see what it can do.

For further information on this format, refer to the source code on our GitHub repository.