What is the 3DS file format?
.3ds is a file format used by Autodesk 3D Studio computer software. .3ds files store various information regarding a 3D scene, including coordinates, mesh data, polygon data used for object creation, attributes, color information, material data, lighting information, bitmap references, animations, and camera locations.
.3ds data is stored in binary format to reduce loading times and file size in comparison with standard text format files of similar type. The .3ds file structure is made of nested data blocks called "chunks", each containing an ID and a data-size field. The first two bytes of each chunk hold the chunk's ID, while the next four bytes hold the chunk's total byte length. Chunks also store information about viewing, shapes, and lighting that together represent a 3D scene. Every valid .3ds file opens with the primary chunk ID 0x4D4D stored in little-endian byte order.
Although .3ds has a successor - the .MAX native project format introduced with 3D Studio MAX in 1996 - it is still widely used on a large scale for cross-application mesh exchange. When richer scene data or animation fidelity is needed, formats such as .FBX or .OBJ are often preferred, though .3ds retains strong legacy support across dozens of 3D tools.
Security & safety
RISK: LOWA 3D-model .3ds is just geometry/material data - no executable code - so opening one in a 3D app is safe; the main practical issue is messy meshes (bad normals, holes) rather than security. One caveat: parsers for old binary mesh formats have occasionally had buffer- overflow bugs, so keep your 3D software updated and be wary of .3ds files from untrusted sources. Always confirm a 'model.3ds' isn't a disguised executable by checking the real extension.
Format details
in a nutshell- Nintendo 3DS game ROM / cartridge image - A dumped Nintendo 3DS game also uses .3ds; it is an unrelated binary that runs only in a 3DS emulator (Lime3DS/Azahar), not a 3D modeler.
Programs that open 3DS files
Technical details
deep spec| Magic bytes | `4D 4D` at offset 0 (primary chunk ID `0x4D4D`) |
| Byte order | Little-endian throughout |
| Storage encoding | Binary (not human-readable text) |
| Chunk ID width | 2 bytes per chunk |
| Chunk length field | 4-byte little-endian integer; value includes the 6-byte chunk header itself |
| Polygon topology | Triangle-only mesh; all faces stored as triangular polygons |
| Vertex index limit | 16-bit index per mesh object - maximum 65,535 vertices per object |
| Texture references | Stores file-path strings to external bitmap files; UV coordinates stored per vertex |
| Material channels | Diffuse color, specular color, shininess, and opacity (transparency) |
| Animation data | Keyframe animation (KFDATA chunk) for object position, rotation, and scale |
| Camera support | Camera position and target point; field-of-view angle defined in degrees |
| Light types | Omni (point) lights and spot lights, each with color and multiplier |
| MIME type | `image/x-3ds` |
| Coordinate system | Right-handed, Y-up |
| Companion format | `.prj` files store additional project settings not carried in `.3ds` |
| Released | 1990 (Autodesk 3D Studio for DOS, releases 1-4); native format until 3D Studio MAX 1.0 in 1996 |
| Specification | en.wikipedia.org |
3DS conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about 3DS files.