normalmaps are used to create the 3D appearence on flat textures. You can see examples of it on all HL2, brick walls, concrete walls, human models, etc. If you look at water textures u will realize they are the same kind of textures, they are flat but it looks like a 3D surface
You can link a normal map to a texture with the .vmf.