Xshade: Exaggerated Shading
for Depicting Shape and Detail

This code is a demonstration of the "exaggerated shading" technique described in the following paper:

Szymon Rusinkiewicz, Michael Burns, and Doug DeCarlo.
"Exaggerated Shading for Depicting Shape and Detail,"
ACM Trans. Graphics (Proc. SIGGRAPH), Vol. 25, No. 3, 2006.

The code is distributed under the GNU General Public License (GPL). Executables for Windows and Linux are provided, together with source code and example models.




    xshade model.xsh
(Dragging a .xsh file onto the program icon might also work.)

The .XSH files package together 3D models with the precomputed smoothed normal vectors necessary for our method. To create a .XSH file from a 3D model in PLY, OFF, OBJ, or 3DS format, run "xshade-make model.ply".

For more details about the mouse and GUI options, please consult the README distributed with the program.


The code is written in C++, and is known to compile using recent (3.x and 4.x) versions of g++. Compiling under Windows is possible using Cygwin or Mingw32. The code may be portable to other compilers or systems, but this has not been tested.

Xshade uses the trimesh2 library, as well as the freeglut and GLUI libraries distributed with it. The whole package is available at /proj/trimesh2/

Szymon Rusinkiewicz
smr at princeton