In short, the direction in which things point up is well, the arrow. Consider that the up position. The rightmost row is the one that was always untouched.
First picture are all oriented identically, second picture, the three rows starting from the far left are variously oriented.
First row is only polygon orientation changed, polygons are NOT connected to each other.
Second row are polygons where the orientation on the UV-map was changed, polygons are NOT connected to each other.
Third row are polygons which share vertices, with their UV-map orientations changed.
Fourth row should be untouched polygons.
The above applies for the 2nd picture of the pair.
Now for comparison pictures. Paired on the basis of overall object orientation
Also note, the brightness changes are not the actual problem, highlight orientation is.
The above is FSO behavior.
This is how its supposed to be...
Same method of "reading" the images as above...
These are proper renders out of Cinema4D
The following 6 pictures are taken from xNormals realtime renderer.
First off, OpenGL 1.3 renderer:
DirectX 9, SM3.0 renderer
DirectX 10, SM4.0 renderer
With posting this, i'd like to apologise to zookeeper and Col. Fishguts.
I wasnt aware of the normal map behavior being actually wrong, and i worked under the assumption that it was correct in FSO. Which proved it isnt.
Anyhow, coders eyes should definitely be on this.