Bringing depth and structure to a texture can be achieved with the Bump functions. Different illumination and shadow casting techniques combine the texture with a Heightmap, which supplies the depth data.
The Bump functions: