A 3D graphic rendering software is typically used to compute the deformation caused by the non perpendicular, non planar or even complex projection surface.
Complex objects (or aggregation of multiple simple objects) create self shadows that must be compensated by using several projectors.
The objects are typically replaced by neutral color ones, the projection giving all its visual properties, thus the name shader lamps.
The technique can be used to create a sense of invisibility, by rendering transparency. The object is illuminated not by a replacement of its own visual properties, but by the corresponding visual surface placed behind the object as seen from an arbitrary viewing point.