How to convert CTM to OBJ
- 1
Open the .ctm
Drop the file on the converter or pick it. If the model has a texture image, add it too. Nothing is uploaded: the file is read in your browser.
- 2
Check the preview
The mesh appears in 3D with its colours, with the compression method, vertex and triangle counts and the texture name the file asks for.
- 3
Download OBJ
Press Download OBJ. You get the same vertices and triangles, in the same order, with normals, UVs and vertex colours when the file has them.
- 4
Or GLB and STL
Save GLB for web viewers, game engines and AR, or STL for a 3D printer slicer.
What is a CTM file, and who uses it?
A .ctm file is an OpenCTM file: a triangle mesh (the same kind of data as OBJ, STL or PLY) packed to a fraction of their size. OpenCTM was made by Marcus Geelnard as an open file format with a free C library and tools, under the permissive zlib licence.
Besides the vertices and triangles, a CTM file can hold normals, UV maps with the name of their texture image, and extra values per vertex, most often colours. It does not hold materials, scenes, bones or animation.
It is used where meshes have to be small: to store and share 3D scans, to send models to web 3D viewers (three.js shipped a CTM loader in its examples for years), and in MeshLab, which opens and saves CTM. Most 3D apps, game engines and slicers do not open it, so a CTM is usually converted to OBJ, GLB or STL before it is edited or printed.
OpenCTM compression: RAW, MG1 and MG2
RAWNo compression- Plain arrays of numbers, the largest CTM files. Converted exactly.
MG1Lossless- The triangle list is delta coded and everything is packed with LZMA. Converted exactly: every number comes back as it was saved.
MG2Fixed precision- Positions, normals, UVs and colours are rounded to a chosen precision before packing, which gives the smallest files. Converted at the precision it was saved with.
Common problems with CTM files
"This is not an OpenCTM file"
Real .ctm files start with the letters OCTM. Some programs use .ctm for something else (other CAD, map or tool files). Those are not 3D meshes this page can read.
The model is grey
The file has no vertex colours and its texture is a separate image. Add the image the file names (shown under the preview) and download the OBJ zip, which holds the OBJ, MTL and image.
The model is lying on its side
Many scanners and CAD tools use Z as up, while OBJ apps usually use Y. Rotate it by 90 degrees in Blender or your slicer after import; the numbers are kept exactly as in the CTM.
The file is cut off or damaged
If a download stopped early, the converter says where the data ends. Download the .ctm again, or ask for it as a zip so it cannot be cut silently.
It is very large
Up to 100 MB of .ctm can be converted here. MG2 files unpack to many times their size, so very large scans work best on a desktop browser.
What this CTM converter does
RAW, MG1 and MG2
All three OpenCTM compression methods of file format version 5, the one every OpenCTM release writes.
Nothing is lost on the way
Vertices and triangles keep their count and order, so the OBJ matches the CTM line for line.
Normals, UVs and colours
Normals and the first UV map are written to the OBJ, and vertex colours as "v x y z r g b".
Textures
Add the image the CTM points to and get an OBJ zip with an MTL, or a GLB with the texture inside.
GLB and STL too
One click for a GLB (web, AR and game engines) or an STL (3D printing).
Private and free
Runs entirely in your browser. No signup, no watermark, no upload.
Need a new model instead? Make one with AI
Our AI tools make and paint 3D models in about a minute. Free to try.