ShaderX 5 Demo for: "Interactive Refractions and Caustics Using Image-Space Techniques" Chris Wyman, University of Iowa Running the demo: ----------------- Unzip the package, goto the "\Release" directory, run the executable "RefractionCausticsDemo.exe" For help on the key controls and UI, press "h" to display a help screen. The default state shows the Beethoven bust casting caustics onto a checker patterned and a wood patterned plane. The caustics are rendered into a 512 x 512 photon buffer and the caustics map is 512 x 512. Both of these sizes are adjustable via the menu. Demo Requirements: ------------------ Requirements: * OpenGL 2.0+ * OpenGL Extensions: - GL_EXT_framebuffer_object - GL_ARB_texture_float - GL_ARB_color_buffer_float I developed this demo on nVidia GeForce 6800, 7800, and 7800 Go cards with 80 or 90 series nVidia drivers. Because the shaders are written in GLSL, and only ARB OpenGL extensions are used (with the exception of GL_EXT_framebuffer_object) the program should run on recent ATI cards without a recompile -- but I have been unable to test this. (Note: If you have an ATI card and this demo does NOT work, first thing to change: eliminate linear texture filtering on the FP16 framebuffers. Fix this in initFramebuffers() in initAndLoad.cpp) The demo uses the GLUT utility toolkit. I have included the DLL in the "Release" directory, but a recompile will require downloading the header and library files. I have compiled against GLUT 3.7.6, but there is no reason FreeGLUT would not work instead. See: http://www.opengl.org/resources/libraries/glut.html The demo access GL extensions using the GLEW library. The DLL is included in the "Release" directory, but the header and library files will be necessary for a recompile. I used GLEW 1.3.4, but versions 1.3.2 and later should work. See: http://glew.sourceforge.net Recompiling: ------------ The Visual Studio Project is from Visual Studio .NET 2003. Recompiling should be as simple as issuing the build command, assuming that the GLUT and GLEW libraries are in the library path and GL\glut.h and GL\glew.h are in the include path. Further Tests: -------------- Additional models for testing can be downloaded from my webpage at: http://www.cs.uiowa.edu/~cwyman A number of them will automatically be recognized the next time you run the demo, if you place them in the correct directories.