ctmviewer(1) 3D viewer for models of various file formats


ctmviewer [modelfile [texturefile]]


ctmviewer is a 3D file viewer that can load, show and save 3D model files in several different formats.

The program displays an interactive 3D view of the model, which can be operated with the mouse (e.g. for rotating and zooming).

If the selected model file contains texture coordinate information, it is possible to specify which 2D image file to use as a texture with the additional texturefile argument. If no texture file is given (either by the 3D model file, or by the texturefile argument), a standard 2D grid is used as a texture.


In addition to the command line arguments, ctmviewer offers several operations that can be performed from the 3D GUI display. For help, press the F1 key.

Loading and Saving

It is possible to load and save 3D model files from the program by either using the buttons in the upper left corner of the 3D display, or by using the keyboard shortcuts CTRL+O (open) and CTRL+S (save).

It is also possible to load a texture file from the program by using the Open Texture button.


To toggle between a normal filled surface view (default) and a wire frame view, press the 'w' key.

Camera Control

By holding down the left mouse button and moving the mouse, the camera is rotated around the 3D model.

By holding down the right mouse button and moving the mouse, the camera will pan left/right and up/down.

By holding down the middle mouse button and moving the mouse, the camera will zoom in and out. It is also possible to use the mouse wheel (not supported on all systems) or the +/- keys to zoom in and out.

Double click the left mouse button on a point on the model to focus the camera on that point.

Press the 'f' key to fit the model into the screen view (re-center and re-zoom).

Press the 'y' key to change the camera up direction to the Y axis (may be necessary if the model was designed in or for an environment where the Y axis is considered the up direction).

Press the 'z' key to change the camera up direction to the Z axis (default).


The following 3D model file formats are supported: OpenCTM (.ctm), Stanford triangle format (.ply), Stereolitography (.stl), 3D Studio (.3ds), COLLADA 1.4/1.5 (.dae), Wavefront geometry file (.obj), LightWave object (.lwo), Geomview object file format (.off), VRML 2.0 - export only (.wrl).

The following 2D image file formats are supported (texture): JPEG (.jpg), PNG (.png).


ctmviewer is designed to be portable, and is available for several different systems, including (but not limited to): Windows, Mac OS X (10.3+), Linux and OpenSolaris.

ctmviewer uses OpenGL for its accelerated 3D display. When the OpenGL implementation supports it, ctmviewer will use per pixel Phong shading for improved visual appearance. Otherwise ctmviewer will fall back to classic per vertex shading.