Casting Shadows with Three.js
learningthreejs.com