Normal map texture does not render on all faces I am using Blender Internal (BI). I have an object with a texture applied to it. The object is UV unwrapped.
The following happens:


Viewport: color texture is visible
Render: color texture is visible
Viewport: normal texture is visible
Render: normal texture is not visible


The following is a figure of a render (left: normal, right: color):



The lightning in the scene consists of:


Environment Lighting (0.200, White)
Sun (1.00; default settings)


The normal map does appear when the sun is changed from "Ray Shadow" to "No Shadow", although it appears inverted (or something):



But evidently I do want shadows being cast by the sun light.

What is wrong?
(((While preparing this question by reproducing my problem in a clean Blender file, to my surprise the problem did not exist. By slowly rebuilding my original scene, I found where the problem comes from, hence I am posting this self-answer.)))

The problem re-appeared as soon as I changed the lighting to "Sun" and turned on "Environment Lighting" to lit the parts not directly lit by the sun. As a consequence, the faces that were not directly lit by the sun did not render their normal maps applied to them.

Therefore, it seems that "Environment Lighting" does not cast rays. Then, if rays do not hit the face, there are no rays to be reflected in different directions depending on the precise location that the rays are incident (which is what the normal map does), and therefore the "normal map will not render".

Now, to have lighting on faces not lit directly by the sun, "Environment Lighting" may be replaced by adding a "Hemi" lamp. This lamp behaves the same as "Environment Lighting" (i.e., light on all directions), but apparently does cast rays, allowing the normal map to be rendered correctly:



Still unsolved questions:


What happened when the sun was changed to "No Shadow" in the OP?
Why does Environmental Lighting work the way it does? Is there a particular reason for which that would be the desired behaviour?