Hm, throwing a shader together with shadow mapping is not so easy, because you have to write the depth of the mesh into the depthmap of the shadowmapping view -and- then you have to evaluate the visibility of the shader's current pixel in the depthmap to estimate, if the pixel is lit or shadowed...