With a single projector connected to a laptop and the aid of LPMT, you can project elements to differently oriented surfaces and compensate projection distortion using deformable quads that can be adjusted directly on the screen by simply dragging their corners.
Each quad in LPMT is an independent object that can contain video, images, live-feed from a webcam, smoothly changing solid colors, a slideshow, etc.
For each quad you can as well configure the speed and looping mode of video, slides and colors transition speed, add a colorization to any kind of content, adjust video volume and quad transparency.A complex setup can be saved to xml file and reloaded later.
You can find a little review of an early version of LPMT at CreateDigitalMotion
LPMT is based on the wonderful OpenFrameworks C++ toolkit for creative coding.OpenFrameworks is a c++ library designed to assist the creative process and wraps together several commonly used libraries under a tidy interface: openGL for graphics, rtAudio for audio input and output, freeType for fonts, freeImage for image input and output, quicktime or Gstream for video playing and sequence grabbing.
The code is written to be both cross platform (PC, Mac, Linux, iPhone) and cross compiler, so it is supposed to work under any of these systems, but LPMT has been developed on a Linux Ubuntu environment and not widely tested on Windows and Mac systems yet.If you successfully use it on a different system we would love if you can provide us informations about it.
http://hv-a.com/lpmt/
http://createdigitalmotion.com/2011/01/free-projection-mapping-with-openframeworks/