Massachusetts Institute of Technology
Please find the Anaglyph and Lenticular viewers and the Matlab source and course slides below. As always, email us with your questions!
Update: I have added a Python version of our anaglyph viewer code to the online code archive. It should be easy to extend this to the lenticular code if you are interested.
In case you're a fan of the CMake build system, Roy Shilkrot has contributed cmakelists.txt files for the anaglyph and lenticular online projects.
Here are Roy's instructions:
They should reside in the sources (cpps and hs) folder.
and to go from source to binary using cmake (on any OS, pretty much):
rm -rf build
The PIC 16f506 firmware code can be found here. This code is released under the GPLv2.
A compiled HEX file can be found here.
This program was compiled using the HI-TECH C compiler version 9.70 Lite. This is a free version of the compiler, available for Mac, Linux, and Windows. The Lite version produces terrible assembly code, but its good enough for this simple program. The SDCC compiler is my preferred choice in compilers for the PIC, but the PIC14 port does not yet support the 16f506.
Version 0.2 of the gschem schematic for the shutter glasses is here. This schematic is released under the GPLv2.
The PCB layout corresponding to this design can be found here. This file is also released under the GPLv2. It can be opened using the gEDA pcb tool. This is a single sided board which is appropriate for construction using a mill or acid etching.
We will be continuing to update this page, course notes and code.
If you're working your way through this material and would like to start on any section that has not yet been posted here, please email me or Doug for the code.
This course was first taught at SIGGRAPH 2010 in LA, and again at SIGGRAPH Asia 2010 in Seoul, South Korea. We modified the course for SIGGRAPH 2011, removing the shutter glasses section, and adding OpenGL code to render lenticular and anaglyph images in real time.
Gregg Favalora, 3D Display Course
Matthew Hirsch: mhirsch [at] media.mit.edu
Douglas Lanman: dlanman [at] media.mit.edu