   Text only shows when drawn last
  Hello, I am working on a 2d projection application. At the moment I am creating a GUI, I can draw buttons, etc just fine however, when I draw text, it ONLY shows if it's the last thing to render. If I render:   Button -> Text [loop], the text will not render, I need to do:  Button -> Button [loop]   Text -> Text [loop],2 separate loops, one for the images, one for the text.This is VERY impractical because I have multiple GUI items, so I would need to render all windows, buttons, etc, THEN all the text, so text would show from windows behind others, etc.The project is in projection mode the whole time, and im rendering everything to 0 on the Z axis (works fine, even on things that overlap, however I have tried setting 1, or -1 for the text Z axis, this is not the problem). Can ANYONE please help? I've been struggling with this for 2 days now. Thanks!   
  What method are your using to render text?How about some source code to peek at?   ;  I'm using glut's text functions, here's some source. // Buttonsfor( unsigned int i=0; i < Elements.size(); i++){   g_pRender->RenderSquare( Elements.button.x, Elements.button.y, Elements.button.w, Elements.button.h, button_graphic );}// I hate this, but GLUT forces us to render text LAST, or else it wont render, just try putting these in the loop above... sighfor( unsigned int i=0; i < Elements.size(); i++){   renderBitmapString( Elements.button.x + 7, Elements.button.y + 17, 0, GLUT_BITMAP_HELVETICA_18, "gfg" );}void cGUI::renderBitmapString(float x, float y, float z, void *font, char *string){char *c;   glRasterPos3f(x, y,z);   for (c=string; *c != '\0'; c++) { glutBitmapCharacter(font, *c);   }}If you put the contents of the second loop inside the first one, it wont render.   ;  Here's my Init code too, it may help:bool init_GL(){glEnable( GL_TEXTURE_2D );glShadeModel( GL_SMOOTH );glClearColor( 0.0f, 0.0f, 0.0f, 0.0f );glClearDepth( 1.0f );glEnable( GL_DEPTH_TEST );glDepthFunc( GL_LEQUAL );glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);glEnable(GL_BLEND);glAlphaFunc(GL_GREATER,0.1f);glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST );glMatrixMode( GL_PROJECTION );glEnable(GL_BLEND);glLoadIdentity();glOrtho( 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, -1, 1 );//Initialize modelview matrixglMatrixMode( GL_MODELVIEW );glLoadIdentity();//If there was any errorsif( glGetError() != GL_NO_ERROR ){return false;    }//If everything initializedreturn true;};  ok, I don't see anything obviously wrong, sans using bitmaps (performance hit :D)Lets see that g_pRender->RenderSquare() though   