   "vertex normals" and "where the polygon is facing" problems
  hi.i currently have a simple quad declared which acts as a mock-up of a wall. i plan on making it a lot more complex later, but first thing''s first.here''s how i do the wall:glBegin(GL_QUADS);   glNormal3f(-1.0f, 0.0f, 0.0f);    glTexCoord2f(0.0, 1.0);    glVertex3f(1.0f, 0.0f, 0.0f);   glNormal3f(-1.0f, 1.0f, 1.0f);    glTexCoord2f(0.0, 0.0);    glVertex3f(1.0f, 1.0f, 0.0f);   glNormal3f(-1.0f, 1.0f, 1.0f);    glTexCoord2f(1.0, 0.0);    glVertex3f(1.0f, 1.0f, 1.0f);   glNormal3f(-1.0f, 0.0f, 1.0f);    glTexCoord2f(1.0, 1.0);    glVertex3f(1.0f, 0.0f, 1.0f);glEnd();now, the problem is, i''m trying to make the wall face the left(since it is a right-hand side wall inside a room). therefore i tried to declare normals(you''ll see i declare one normal per vertex for lighting purposes), each taking the actual vertex location and substituting the x coordinate for -1.0f (to make sure it points to the left). however, GL still draws nothing when i rotate the model so that i''m looking at the wall from the inside of the room. however, when i rotate everything so that i''m looking at it from the outside, everything''s there.questions:1. how do i solve this problem?2. are my declarations for vertex normals ok? i don''t apply the normal algorithm yet since none of my polygons share the same vertex yet.3. with all these functions out there that supposedly find the normals of planes, how do i assure that they yield the normal facing the correct side? thanks! 
  1.  Normals don''t change whether something is visible or not, that''s back face culling.  Your polygon must be defined with vertices in clockwise ordering, and culling set the remove counter clockwise faces.  The vertices will only be counter clockwise when the face is pointing away from you.  Just reverse the order of your vertices.2. Normals are directions.  They have nothing to do with the vertex position at all.  They are used solely for lighting.  If you want the wall to appear lit as though it is facing left set all 4 normals to (-1,0,0);  unless I am mistaken, in openGL you need to define the vertices in COUNTER-clockwise orientation. The front and back of a vertex is decided at the moment of creation, using the winding order. The normals have nothing to do with it. They are only used for lighting, and not to check if the poly is backfacing or not. ;  Clockwise order or counterclockwise order isn''t really important, as long as you are consistent. By default, counterclockwise vertices are considered front faces, but this is easily changed using glCullMode.   ;  thanks you guys! ;quote:Original post by Kippesoep  Clockwise order or counterclockwise order isn''t really important, as long as you are consistent. By default, counterclockwise vertices are considered front faces, but this is easily changed using glCullMode.if i remember correctly there are kinds of primitive that are clockwise (quads might be some of them). strips alternate anyway and so i usually resort to do it ccw and if nothing shows up, disable backface culling and if thats the problem just try it the other way round.