WebGL Gems is a 3D graphics programming book for game developers who wish to learn how to make games in web browsers. Each of 32 "gems" contains detailed walkthrough with complete source code. Table of Contents Gem 1 - JavaScript Canvas Initializing 2D Context Ensuring Graphics Assets Are Fully Downloaded Loading Multiple Types Of Resources Simultaneously Initializing 3D Context Gem 2 - Initializing WebGL Gem 3 - Simplified WebGL Pipeline In WebGL Browser Takes Care of Double Buffering Drawing Basic Primitives And Then There Were Attributes What Exactly Is Varying? From OpenGL to WebGL Gem 4 - Clearing the Screen For JavaScript Purists Gem 5 - Matrix Principles Introduction to Matrices Common 3D Matrices Model View Projection Matrix Gradual Discovery Birth of the Matrix Matrix Multiplication Multiplication Order Who Is Moving? Who Is Staying? Shadow Casting Basic Representation Translation and Rotation Starfield Demo Simple Particle Engine The Star Class Clipping Planes Starfield Demo Results Matrix Structure Sequential Order Homogeneous Coordinates Row-Major and Column-Major Matrix Notations Default Camera Position Efficient Cross-Matrix Calculations Common Cross-Matrix Operations Multiplication Tangent Metamorphosis Into Camera's View Matrix Other Common Matrix Operations Local and World Coordinate System Rotation Matrix Rotation Around Z-axis Rotation Around X-axis Rotation Around Y-axis Translation Matrix Scale Matrix Using a 3D Matrix JavaScript Library Matrix Libraries And Where To Get One Matrix Library Examples Conclusion Gem 6 - Simple Shader Example Simple Fragment Shader Shaders In a String Initializing Shader Program Multiple Shader Programs Drawing a Point Gem 7 - Drawing a Point Creating Shader Program Manager Gem 8 - Loading Shaders From