WebGL WaterClick HereWhen putting the ball into the pool, you can observe that a spray of water comes out with repples.
Ellie Goulding Light'sClick HereA beam of light crosses through a bunch of balls, accompanied by the brilliant music. Clicking the mouse makes the beam speed up.With the beam flying, more beams and colors come up in the dynamic scene.
Geometric ToolsClick HereBooks,Source Code,and Documentation for Computer Graphics, Mathematics,Physics,Numerical Methods,and Image Analysis.
OgreClick HereOpen Source 3D Graphics Engine
ShadertoyClick HereBuild and share your best shaders with the world and get inspired.


1Real-Time RenderingTomas Akenine-Möller, Eric Haines, and Naty Hoffman.
Real-time rendering. CRC Press, 2011.
2Real-Time ShadowsElmar Eisemann, et al. Real-Time Shadows. CRC Press, 2011.
3Computer Graphics Using OpenGL, 3/EF. Hill, and S. Kelley. Computer Graphics Using OpenGL, 3/E. Pearson, 2007.
4Geometric Tools for Computer GraphicsPhilip Schneider, and David H. Eberly. Geometric tools for computer graphics. Morgan Kaufmann, 2002.
5OpenGL Programming Guide:The Official Guide Learning OpenGL, version x.xSelect the version that satisfies your needs.
6C++ 3D Math Primer for Graphics and Game DevelopmentFletcher Dunn, and Ian Parberry. 3D Math Primer for Graphics and Game Development. CRC Press, 2011.
7OpenGL Shading LanguageRandi J.Rost. OpenGL Shading Language. Addison-Wesley Professional, 2004.
8Thinking in C++
9C++ PrimerStanley B. Lippman, Josée Lajoie, and Barbara E. Moo. C++ Primer. Pearson Deutschland GmbH, 2006.
10Graphics Gems 1-5
11Real-Time Collision DetectionChrister Ericson. Real-time collision detection. CRC Press, 2004.
12Computational Geometry in CJoseph O'Rourke. Computational Geometry in C. Cambridge university press, 1998.
13Computational Geometry: An IntroductionFranco P. Preparata, Michael Ian Shamos, and Franco P. Preparata. Computational Geometry: An Introduction. Vol. 5. New York: Springer-Verlag, 1985.
14Computational GeometryMark De Berg, et al. Computational Geometry. Springer Berlin Heidelberg, 2000.


1James F. Blinn. "Simulation of wrinkled surfaces." ACM SIGGRAPH Computer Graphics, vol.12, no.3, pp.286-292, 1978.Introduce to the theory of bump texture and some implementations.
2Paul Haeberli, and Kurt Akeley. "The accumulation buffer: hardware support for high-quality rendering." ACM SIGGRAPH Computer Graphics, vol.24, no.4, pp.309-318, 1990.Present the accumulation buffer of hardware support, supporting implementation of motion blur, antialiasing, depth of field, soft shadows.
3Robert L. Cook, Thomas Porter, and Loren Carpenter. "Distributed ray tracing." ACM SIGGRAPH Computer Graphics. vol.18, no.3, 1984.Present distributed ray tracing, implementing motion blur, gloss, penumbras, depth of field, translucency.
4Robert L. Cook. "Stochastic sampling in computer graphics." ACM Transactions on Graphics (TOG), vol.5, no.1, pp.51-72, 1986.Combining stochastic sampling and distributed ray tracing implements antialiasing.
5Michael Gervautz, and Werner Purgathofer. "A simple method for color quantization: Octree quantization." New trends in computer graphics. Springer Berlin Heidelberg, pp.219-231, 1988.Implement color quantization by octree.
6James F. Blinn. "Models of light reflection for computer synthesized pictures." ACM SIGGRAPH Computer Graphics. vo.11, no.2, 1977.Present a new reflectance model for rough surfaces based geometrical optics.
7Robert L. Cook, and Kenneth E. Torrance. "A reflectance model for computer graphics." ACM Transactions on Graphics (TOG), vol.1, no.1, pp.7-24, 1982.Improving the reflectance model presented in [6]
8Lance Williams. "Pyramidal parametrics." ACM Siggraph Computer Graphics, vol.17, no.3, 1983.Present the theory of mipmap, the multiple levels of detail.
9Bui Tuong Phong. "Illumination for computer generated pictures." Communications of the ACM, vol.18, no.6, pp.311-317, 1975.Present the Phong illumination model.
10Edwin Catmull. "A subdivision algorithm for computer display of curved surfaces."UTAH UNIV SALT LAKE CITY SCHOOL OF COMPUTING, 1974.Present z-buffer determining visible surface.
11Lance Williams. "Casting curved shadows on curved surfaces." ACM Siggraph Computer Graphics, vol.12, no.3, 1978.Present the theory of shadow mapping.