I am now using vertex arrays for drawing terrain. The terrain is rendered with a LOD algorithm and uses GL_TRIANGLE_FAN. The triangles are drawn normally but the lighting is wrong. I noticed that the lighting is only below the terrain. So, when I move below the terrain, I see a correct lighting of the inverse terrain. The vertex calculation didn’t change from earlier implementations where I used glBegin/End and explicitely used Normal3fv. The vertex array is as big as the normals array. Each vertex has a normal. I also tried to change glFrontFace, but with no effect. So, has anyone a hint what I’ve done wrong?