How to reverse normals when using AUTO_NORMAL

Hi I’m trying to create a mesh of Bezier surface using 16 control points. They are specified in an order like:

P1 P2 P3 P4
P5 P6 P7 P8

… P16

row is the z axis, col represent x axis

when I created it using glMap2f and glEvalMesh, weirdly, it seems all the normals been the different direction as I expected, the other side of surface is bright and correcly shaded, and the surface that supposed to be light doesn’t have any light effect at all. I am sure that my lighting is correct cuz I tested using polygon.

I think it get something to do with the order I specified all the control points…

and also, is there anyway to reverse the normals?

The most weird thing is that in my windows machine, it display all well with both side shaded… and come to this problem when I switched to linux…

Thank you!

Try reversing the winding of your polygons.

if you pass your vertices to OpenGL counter clockwise then let OpenGL know about it:
glFrontFace(GL_CCW);

I believe OpenGL relies on this information to generate normals for you.