   only one light works?
  i put two lights in the scene,but only LIGHT0 works. Thanks for your reply in advance.******************the procedure is as follows**************************void init(void) {   GLfloat mat_specular[] = { 1.0, 1.0, 1.0, 1.0 };   GLfloat mat_shininess[] = { 50.0 };   GLfloat light_position[] = { 1.0, 1.0, 1.0, 0.0 };   glClearColor (0.0, 0.0, 0.0, 0.0);   glShadeModel (GL_SMOOTH);   GLfloat light1_ambient[]={0.2,0.2,0.2,1.0};   GLfloat light1_position[] = { -2.0,2.0,1.0, 1.0 };   GLfloat light1_diffuse[]={1.0,1.0,1.0,1.0};   GLfloat light1_specular[]={1.0,1.0,1.0,1.0};   GLfloat spot_direction[]={-1.0,-1.0,0.0};   glLightfv(GL_LIGHT1, GL_AMBIENT, light1_ambient);   glLightfv(GL_LIGHT1, GL_DIFFUSE, light1_diffuse);   glLightfv(GL_LIGHT1, GL_SPECULAR, light1_specular);   glLightfv(GL_LIGHT1, GL_POSITION, light1_position);   glLightf(GL_LIGHT1, GL_CONSTANT_ATTENUATION, 1.5);   glLightf(GL_LIGHT1, GL_LINEAR_ATTENUATION, 0.5);   glLightf(GL_LIGHT1, GL_QUADRATIC_ATTENUATION, 0.2);  glLightf(GL_LIGHT1,GL_SPOT_CUTOFF,45.0);   glLightfv(GL_LIGHT1,GL_SPOT_DIRECTION,spot_direction);   glLightf(GL_LIGHT1,GL_SPOT_EXPONENT,2.0);   glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);   glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess);   glLightfv(GL_LIGHT0, GL_POSITION, light_position);glEnable(GL_LIGHTING);   glEnable(GL_LIGHT0);   glEnable(GL_LIGHT1);   glEnable(GL_DEPTH_TEST);}   
  hi,I tried your setting and it works for me...I guess you are trying to spot-light a larger mesh, and in that case you should check your attenuations. Furthermore note that your light is not __shining__ towards the locale...playing with spot cutoff might also help you.xiboEDIT: Ah, and welcome to GameDev.net.   ;Original post by xibothanks for your remiding,it works now.