OBJ in one paragraph
Wavefront OBJ is a plain-text format from the late 1980s that is still one of
the most widely exchanged 3D formats. It lists vertices (v), texture
coordinates (vt), normals (vn) and faces (f), and unlike STL it supports
quads and larger polygons, shared vertices and UV mapping. What it does not
contain is colour: materials live in a separate .mtl file, referenced by a
mtllib line, and the .mtl in turn references image files for textures.
So an OBJ "model" is often three or more files that only work together.
Why OBJs lose their textures
The most common problem with OBJ is not the geometry — it is the companions.
Someone emails you chair.obj, but the chair.mtl and wood_diffuse.jpg it
depends on were left on their disk. Most viewers then show a grey mesh without
saying why.
Mes3D reads the mtllib line, looks for each material library and every
texture the library names, and if one is missing it tells you the file name.
That turns "it looks wrong" into "ask them for wood_diffuse.jpg".
How to open an OBJ with its materials
- Put the
.obj,.mtland texture images together — usually they already sit in one folder. - Drag the whole folder, all the files at once, or a ZIP of them onto the drop zone above. Clicking Choose 3D file and selecting several files works too.
- The model opens with its materials. Pick Original as the model colour to see them, or any solid colour to inspect the bare shape.
- Rotate, zoom, pan and use preset views; on a computer, measure distances and open the mesh analysis.
If you only have the .obj, open it on its own — the geometry is all there,
just without colour.
What Mes3D does with the geometry
- Quads and n-gons are triangulated for display; the original file is not changed.
- Multiple groups and objects in one OBJ are shown together.
- The bounding-box size and triangle count are shown in the dimensions panel.
- Volume, surface area, estimated print weight, watertightness and overhangs are computed from the triangles — useful when an OBJ is headed for a 3D printer.
Because OBJ has no unit, all sizes are read as millimetres. Models from animation and game tools are often in centimetres or metres; a "2 mm tall person" is a metre-scale export, not a broken file.
OBJ, STL or glTF?
| Need | Best choice |
|---|---|
| Send geometry to a 3D printer | STL or 3MF |
| Move a textured model between modelling tools | OBJ (with its .mtl and images) |
| Show a textured model on the web or in AR | glTF / GLB — one file, PBR materials |
| Keep units and colours for printing | 3MF |
OBJ's weakness is that it is a folder rather than a file. If you are the one sending it, zip the folder; if you are publishing to the web, convert to GLB.
On a phone
In a mobile browser you can open an OBJ (or a ZIP containing one), rotate and
zoom it and read its dimensions. The Mes3D app for iPhone, iPad and Android
opens OBJ files from Files, Mail or chat attachments, adds measuring, mesh
analysis and cross-sections, and can export a resized or cut model as OBJ,
STL or 3MF. On iPhone and iPad it adds AR too, and once it is installed .obj
files get a 3D preview and thumbnail in the Files app.
Limits
- Up to 200 MB per file in the browser.
- Texture images must be in a format the browser can decode (PNG, JPEG, WebP and similar). TGA and DDS textures referenced by older exports may not show.
- Only the materials an
.mtldefines are used; renderer-specific shaders from the source application are not.