Free webp to jpg
3DS

Autodesk 3D Studio

image/x-3ds Released 1990 · by Autodesk (The Yost Group)

The image/x-3ds MIME type represents the legacy Autodesk 3D Studio (3DS) file format. Created in 1990 for the MS-DOS-based 3D Studio software (the predecessor to modern 3ds Max), it utilizes a binary, chunk-based structure. It stores 3D mesh geometry (vertices and polygons), material properties, texture mapping coordinates, lighting, camera data, and basic keyframe animation. Because of its early dominance in the 3D graphics industry, it became a universal exchange format, though its strict 16-bit limitations make it unsuitable for modern, high-fidelity 3D assets.

3D Graphics & Modeling Transparency Animation Production Ready

Technical Specifications

MIME Type
image/x-3ds
Extensions
.3ds
Container
Binary Chunk System
Compression
Uncompressed Binary (Chunk-based)
Algorithms
None
Color Depth
Not Applicable (Stores 3D geometry and material RGB definitions)
Metadata
None
Capabilities
Transparency
Animation
Progressive Loading
Alpha Channel
HDR Support
Official Specification
Aliases: application/x-3dsimage/3ds

Magic Bytes & HTTP Headers

File Signature (Magic Bytes)
4D 4D
ASCII: MM
HTTP Headers
Content-Type: image/x-3ds
Content-Type: application/x-3ds
HTML Accept Attribute
accept="image/x-3ds, .3ds"

Browser Support Matrix

Browser Status Min Version
Chrome Chrome
Not Supported
Firefox Firefox
Not Supported
Safari Safari
Not Supported
Edge Edge
Not Supported
Internet Explorer Internet Explorer
Not Supported Legacy

Advantages & Limitations

Advantages
  • Nearly universal support; practically every 3D modeling application created in the last 30 years can read and write 3DS files
  • Extremely simple, well-documented binary structure that is trivial to parse for custom rendering engines
Limitations
  • Hard limit of 65,536 vertices and polygons per mesh due to 16-bit addressing
  • Enforces archaic 8.3 MS-DOS filename length restrictions for all linked texture files
  • Lacks support for modern 3D concepts like skeletal animation (rigging), normal mapping, and physically based rendering (PBR)

Developer Code Snippets

import magic
# Libmagic may struggle to uniquely identify 3DS and often outputs 'application/octet-stream'
# Checking the 4D 4D chunk header manually:
with open('model.3ds', 'rb') as f:
    is_3ds = f.read(2) == b'\x4D\x4D'
    print('Is 3DS:', is_3ds)
const fs = require('fs');
// Manually detecting the 3DS main chunk ID (0x4D4D)
const buffer = Buffer.alloc(2);
const fd = fs.openSync('model.3ds', 'r');
fs.readSync(fd, buffer, 0, 2, 0);
fs.closeSync(fd);
const is3DS = buffer[0] === 0x4D && buffer[1] === 0x4D;
console.log('Is 3DS File:', is3DS);
import (
    "bytes"
    "net/http"
)
// http.DetectContentType will generally return 'application/octet-stream'.
// You must perform a direct prefix check for the chunk ID.
// is3DS := bytes.HasPrefix(buf, []byte{0x4D, 0x4D})
$mime = mime_content_type('model.3ds');
echo $mime; // Standard setups will often resolve this to 'application/octet-stream' without custom magic byte definitions.

File Detection Steps

How to programmatically detect a image/x-3ds file by reading its raw bytes:

  1. 1 Check the first two bytes for the Main Chunk ID: 0x4D4D (Hex: 4D 4D).
  2. 2 The next four bytes represent the 32-bit little-endian integer for the total size of the chunk, which should typically match the total size of the file.
  3. 3 The format is strictly composed of hierarchical chunks (ID + Length + Data).

Software Support

A
Autodesk 3ds Max
B
Blender
M
MeshLab
U
Unity

Conversion Tools

Share & Embed

Markdown Badge
3DS Format Badge
[![3DS Format](https://freewebptojpg.com/mime/image/3ds/badge.svg)](https://freewebptojpg.com/mime/image/3ds)
Interactive iframe Widget
<iframe src="https://freewebptojpg.com/mime/image/3ds/embed" width="100%" height="280" style="border:1px solid #cbd5e1;border-radius:8px;" title="3DS Specs"></iframe>

JSON API

All data on this page is available as a free, open JSON API. Use it in your project, documentation, or tooling.

GET https://freewebptojpg.com/mime/image/3ds.json Open JSON
Free to use
No auth required
CORS enabled
Use from any domain
Cached 24h
Cache-Control headers set

Frequently Asked Questions

What is a 3DS file?

A 3DS file is a 3D graphics format created by Autodesk in the 1990s. It stores 3D models, including their geometry, materials, and basic lighting, using a chunk-based binary structure.

Why is my 3DS model missing textures?

The 3DS format was built for MS-DOS, which strictly enforced the '8.3' filename limit (8 characters for the name, 3 for the extension). If your texture filenames are longer than 8 characters, the 3DS format will truncate them, causing texture links to break when opened in modern software.

What is the vertex limit for a 3DS file?

Due to its 16-bit integer architecture, a single mesh object within a 3DS file cannot contain more than 65,536 vertices or polygons. Modern 3D models easily exceed this, meaning they must be split into multiple smaller objects before being exported to 3DS.

Related Formats

Share this format