Format Guide

OBJ File Format (.obj)

The rendering community's mesh format — UV mapping, multi-material groups, and near-universal software support.

Download Free Trial

Free 30-day trial. No credit card required. Windows 10/11.

30-day money-back guarantee · one-time license  —  See pricing

Extension.obj (+ .mtl for materials)
Full nameWavefront Object
Geometry typePolygon mesh (triangles, quads, n-gons)
Open standardYes
Supports colorVia MTL material file
Supports UV mappingYes
Supports assembliesNo (groups only)
EncodingASCII text

What is an OBJ file?

OBJ (Wavefront Object) was developed by Wavefront Technologies in the late 1980s. It is a simple ASCII text format that stores polygon meshes with vertex positions, UV texture coordinates, and vertex normals. Material definitions are stored in a companion .MTL file that references texture images. OBJ supports polygonal faces (triangles, quads, n-gons), making it flexible for both CAD geometry and organic 3D art. Because it is a plain text format with no proprietary restrictions, OBJ has become one of the most universally supported interchange formats across rendering, game development, and visualization tools.

Common Uses of OBJ Files

3D Rendering & Visualization

OBJ is the standard input for offline renderers (Blender Cycles, V-Ray, Arnold) and real-time visualization tools. UV coordinates enable photorealistic material and texture mapping.

Game Asset Import

Unity, Unreal Engine, and Godot all import OBJ. For static props and architectural elements without animation, OBJ is a clean, dependency-free alternative to FBX.

Photogrammetry Output

Photogrammetry software (Agisoft Metashape, RealityCapture, Polycam) exports to OBJ because the format preserves UV maps needed for baked texture maps.

Software Support

Blender, Maya, 3ds Max, Cinema 4D, ZBrush, Houdini, Unity, Unreal Engine, SolidWorks, Fusion 360, and virtually all 3D tools.

Convert This Format

Commonly converted from STEP or IGES (for visualization), to glTF/GLB (for web and AR), to DAE (for scene toolchains), or to STL (for 3D printing).

How to convert to OBJ

Turning a CAD model or another mesh into an OBJ file takes three steps in 3D CAD Converter.

1

Load your model

Drag a STEP, IGES, FBX, glTF or STL file into the app, or drop a whole folder to convert many models at once.

2

Choose OBJ

Select OBJ as the output format. The app writes a matching .mtl material file automatically, and you can set the mesh quality before converting.

3

Convert

Click Convert and the app writes the .obj together with its .mtl and any texture files. Everything runs offline, so your models stay on your machine.

Prefer the command line? The bundled CLI converts to and from OBJ too:

Convert a STEP part to OBJ
cadconvert convert -i part.step -o part.obj

Convert an OBJ mesh to GLB for the web
cadconvert convert -i model.obj -o model.glb

Batch a whole folder (recursively) to OBJ
cadconvert batch -i ./in -o ./out -f obj -r

Add --units or --tessellation to control scale and mesh density when converting from CAD formats such as STEP.

OBJ — the universal mesh format

OBJ is the lingua franca of 3D meshes. Almost every renderer, game engine and modeling tool reads and writes it, and its companion .mtl file carries material and texture references, so OBJ remains the safe choice for visualization, photogrammetry output and moving static geometry between tools. It is plain text, open and free of proprietary restrictions.

Need a web or AR target instead, or a 3D-printing mesh? Compare OBJ with glTF, STL.

Common OBJ issues and how to avoid them

Missing MTL or textures

OBJ stores geometry only; colors and textures live in a separate .mtl file that the .obj references, and the .mtl points to image files. Move or send all three together — the .obj, its .mtl and the textures — or the model loads untextured. 3D CAD Converter writes the matching .mtl automatically.

No scene graph or assemblies

OBJ supports named groups but has no real scene hierarchy, so multi-part CAD assemblies flatten into a single object. If you need to keep the assembly structure, export to glTF/GLB or FBX instead, which preserve a node tree.

Y-up vs Z-up orientation

CAD tools are usually Z-up while many renderers and game engines are Y-up, so an imported OBJ can appear rotated 90 degrees. 3D CAD Converter applies the right axis convention on export; if a model still looks tipped, rotate it in your target tool.

OBJ — Frequently asked questions

What is a .obj file?

A .obj file is a Wavefront Object file — a plain-text 3D format that stores polygon mesh geometry as vertex positions, UV texture coordinates and normals. Color and texture data live in a companion .mtl material file. Because OBJ is simple, open and non-proprietary, it is one of the most universally supported mesh formats in rendering, game and visualization tools.

Why is my OBJ file missing its materials or textures?

OBJ stores geometry only; colors and textures live in a separate .mtl file that the .obj references, and the .mtl in turn references image files. If you move or send an OBJ without its .mtl and textures, it loads untextured. Always keep the .obj, its .mtl and the texture images together. 3D CAD Converter writes the matching .mtl alongside every OBJ it exports.

How do I convert an OBJ file to glTF or STL?

Open the OBJ in 3D CAD Converter, pick glTF/GLB for web and AR or STL for 3D printing, and convert — drop a folder to batch many files. From the command line run cadconvert convert -i model.obj -o model.glb or cadconvert convert -i model.obj -o model.stl. You can also convert STEP and IGES files into OBJ the same way.

Can I convert OBJ files for free?

Yes. 3D CAD Converter offers a free trial that converts OBJ to glTF, STL, FBX, PLY and more — and converts STEP and IGES into OBJ — including whole folders in batch, with control over mesh quality. Use the desktop app or the cadconvert command line.