Lighting & Shadows | Unity Shader Code Basics 06
We can loop over each light to apply diffuse, specular, Fresnel, and ambient lighting to objects. The ShadowCaster pass lets us block lighting from reaching other objects.