I have some objects on a plane and i use shadow mapping, all goes right. But when i draw an object with a shader, that object casts shadow but does not receive (as normal). To make my object receive shadow do i have to change shader code (inserting test with shadow map)? Is this way correct? If yes, do i have to change all shaders that i want to receive shadow? For example i have a wood, marble and stone shaders, if i want draw objects with and without shadow mapping i must have two version of every shader, is this correct?