Preview3D
Get

What is an .off file? Geomview meshes, ModelNet, and the Mac

OFF (Object File Format) is a very simple text format for polygon meshes that spread with the Geomview viewer from the University of Minnesota. It's used mostly in research: in the CGAL library, in polyhedron tools, and in machine-learning datasets such as ModelNet. A Mac doesn't open it by itself.

At a glance

Extension
.off
Type
Triangle mesh
Created by
Geomview (University of Minnesota)
Standard
Not a formal standard
macOS without an app
Doesn't know it: no preview, no thumbnail

Facts checked November 4, 2026

The whole format on one screen

This is a cube with 10-unit edges:

OFF
8 6 0
0 0 0
10 0 0
10 10 0
0 10 0
0 0 10
10 0 10
10 10 10
0 10 10
4 0 3 2 1
4 4 5 6 7
4 0 1 5 4
4 1 2 6 5
4 2 3 7 6
4 3 0 4 7

The word OFF at the start is recommended but optional, according to the Geomview manual, so many files lack it. The second line holds the counts: 8 vertices, 6 faces and the number of edges. That last one isn't used or checked, but it has to be there, and it's usually 0. Then come the vertex coordinates, one per line. Each face starts with its number of vertices, followed by their numbers, counted from zero. OBJ counts from one, so watch out when converting by hand. A face may be concave, but it can't have holes. Comments start with #.

A face colour can follow the vertex numbers: three or four integers from 0 to 255, or decimals from 0 to 1. Antiprism points out that this is ambiguous: 1 0 0 can be red in decimals or almost black in integers.

Prefixes: COFF, NOFF, STOFF and more

The keyword can take prefixes that add data to each vertex:

HeaderWhat each vertex gets
NOFFa normal
COFFa colour
STOFFtexture coordinates
4OFFa fourth, homogeneous coordinate
nOFFany number of dimensions

There's also a binary variant, OFF BINARY. OFF has no units, no materials, and no more than one object per file.

Where you meet OFF

  • Machine-learning datasets. Princeton's ModelNet10 and ModelNet40 (CVPR 2015) store their CAD models as OFF. Some ModelNet40 files have a broken header with the counts on the same line as the word OFF, such as OFF6586 5534 0, and stricter programs reject them.
  • The Princeton Shape Benchmark. Its files are always text, always start with OFF, and the edge count is always 0. Older versions of the models contained a −1 index because of a conversion error.
  • Geometry and polyhedra. The CGAL library reads and writes OFF, the Antiprism toolkit describes polyhedra in it, and Geomview even four-dimensional objects.

Where OFF came from

The name and the first description of the format come from Digital Equipment Corporation. The description now on paulbourke.net carries the name Randi J. Rost in its header and presents the format for exchanging and archiving 3D objects, as text or binary. The flavour most programs read today, though, is the one described in the Geomview manual. Geomview came from the Geometry Center at the University of Minnesota. It started in the summer of 1988 with the MinneView viewer (by Pat Hanrahan), and the first version of Geomview was finished in January 1992. Geomview is still available under the GNU LGPL.

How to open OFF on a Mac

macOS doesn't know OFF. On macOS 27.0.1 the system has no file type for it, and neither Preview, Quick Look nor the Finder shows it. A text editor shows you numbers, not a shape.

  • MeshLab is free, comes in Apple silicon and Intel versions, and opens OFF.
  • Python and MATLAB. Researchers have libraries for it; Princeton offers MATLAB functions alongside ModelNet.
  • Preview3D, my app, opens .off files on a Mac in its window, in Quick Look and as Finder thumbnails. On iPad, iPhone and Apple Vision Pro too. So you can browse a dataset folder as thumbnails without writing any code.

Preview3D reads OFF through the Assimp library. I tried it in the same build the app uses, with files written from the Geomview manual. It opened OFF with and without the keyword, the COFF, NOFF, STOFF and 4OFF variants, the broken ModelNet40 header, and faces with five vertices. It doesn't open binary OFF. The app doesn't use the file's colours; it shows the geometry in one plain colour.

Watch out for one thing: comments. Assimp gets stuck on the # character when reading a comment. A file with a comment before the counts line, or on it, didn't load in my test – reading got stuck. A comment between the vertices and the faces swallowed one face instead. So for now, remove comments before opening:

sed -e 's/#.*//' -e '/^[[:space:]]*$/d' model.off > no-comments.off

The command deletes everything from # to the end of the line, and the blank lines. All my test files then loaded in full.

Model info has the dimensions in the file's units and the triangle count, plus a mesh check. On iPad and iPhone it stands the model on your desk in AR, fitted to the desk, because OFF has no unit.

Converting OFF to STL, OBJ or PLY

On a Mac, Preview3D converts from File → Export model as… (⌥⌘E) to STL, OBJ or PLY, without uploading anything. Polygons are split into triangles and colours are dropped. OFF has no unit, so check the size in the slicer.

Common questions

What is an .off file?

A text file with a polygon mesh: the counts, a list of vertices and a list of faces. It comes from the Geomview viewer and is used mostly in research.

Why does the header have three numbers when the third isn't used?

The third number is the edge count. According to the Geomview manual it isn't used or checked, but it must be present, and it's usually 0.

How can I look through ModelNet files on a Mac?

In Preview3D as Finder thumbnails, or in MeshLab. Preview3D also copes with broken headers like OFF6586 5534 0.

How does OFF differ from OBJ?

OFF counts vertices from zero, OBJ from one. OFF keeps colours right on faces or vertices and holds one mesh per file; OBJ keeps materials in an .mtl file and can hold several objects.

Does a Mac open .off without another app?

No. macOS 27 has no file type for OFF, and neither Preview nor Quick Look shows it.

How do I convert OFF to STL or OBJ?

On a Mac, in Preview3D with File → Export model as…, or in MeshLab. Then check the size.

Related pages

Sources

Working with ModelNet or another OFF dataset and need to look through it quickly on a Mac? Write to me at apps@xfanta.com and tell me what would help.

Open it in Preview3D

STEP, 3MF, STL, G-code, BGCODE and more on Mac, iPad, iPhone and Vision Pro. One purchase, no account, no network.

Preview3D on the App Store