Added shading functionality