What is a .OBJ file?
The .obj extension is shared by Wavefront 3D models and compiled object files.
Compiled object file
- What it is
- A compiled object file - relocatable machine code emitted by a C/C++ compiler (COFF on Windows, ELF on Unix) and linked into an executable. Analyser identifies it from its header.
- How to tell it apart
- An object file is binary - ELF starts with 7F E L F, COFF with a machine-type word.
- Did you know
- An object file holds machine code with the jump addresses left blank; the linker fills them in when it stitches the objects into an executable.
- The two dominant object formats are ELF, introduced with Unix System V Release 4 and now standard on Linux and BSD, and Microsoft's COFF-based format on Windows.
- An object file cannot run on its own - it is an intermediate step, which is why a compiler emits one .obj per source file before the linker combines them.
Wavefront 3D model
- What it is
- A Wavefront OBJ 3D model - text geometry (vertices, faces, normals) usually paired with a .mtl material library. Analyser opens it in the interactive WebGL 3D viewer.
- How to tell it apart
- A Wavefront model is text starting with v, vn or f lines.
- Did you know
- The OBJ format comes from 1980s Wavefront Advanced Visualizer software, and its plain-text simplicity is exactly why it became the universal 3D interchange format.
- OBJ indices are 1-based rather than 0-based, so the very first vertex is referred to as 1 - a frequent source of off-by-one bugs when writing importers.
- OBJ stores only geometry and material references, with no way to record animation, lights, cameras or a scene hierarchy, which is why richer formats like glTF and FBX exist alongside it.
- Open a .OBJ file
- Drag a .OBJ file onto the Analyser home page (or tap to pick one). It opens entirely in your browser - nothing is uploaded, there is no account, and it works offline once installed.