   Why is only one Quad rendering here?
  I have a program where I am drawing spaceships onto a scene.  I am trying to draw two ships and I have the code in place to call the "show" function for each of these ship objects:// snipped from main loop glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );   //Show the dot on the screen   enemyShip.show(1);   myShip.show(0);   // update screen    SDL_GL_SwapBuffers();The integer passed to the show function is the texture that will be displayed. The show function:void Ship::show(int whichTexture){    glLoadIdentity();    glTranslatef(x, y, 0);glClear(GL_COLOR_BUFFER_BIT);    glBindTexture(GL_TEXTURE_2D, texture[whichTexture]);  glBegin( GL_QUADS );   glTexCoord2i(0, 0);  glVertex3f( 0, 0, 0 );   // upper left   glTexCoord2i(1, 0);  glVertex3f( w, 0, 0 );   // upper right   glTexCoord2i(1, 1);  glVertex3f( w, h, 0 );   // bottom right   glTexCoord2i(0, 1);  glVertex3f( 0, h, 0 );   // bottom left    glEnd();    glLoadIdentity();}When I comment out the enemyShip.show(1), then myShip renders perfectly.  If I comment out myShip, then enemy ship renders perfectly.  Why won't both ships render at the same time?   
  glClear is clearing the last ship drawn, that is, the glClear in show().   ;Quote:Original post by NumberXaeroglClear is clearing the last ship drawn, that is, the glClear in show().Thank you.  That was it. I'm still trying to get a handle on what these various calls do.  I wasn't sure what clear did and I'm not sure why I even had it in there.  Thanks a ton though.