Host_StartVideo();
S_StopAllSounds();
- SCR_UpdateLoadingScreen();
+ SCR_UpdateLoadingScreen(false);
}
//=============================================================================
R_TimeReport("meshfinish");
}
-void SCR_UpdateLoadingScreen (void)
+void SCR_UpdateLoadingScreen (qboolean clear)
{
float x, y;
cachepic_t *pic;
//qglDisable(GL_SCISSOR_TEST);CHECKGLERROR
//qglDepthMask(1);CHECKGLERROR
qglColorMask(1,1,1,1);CHECKGLERROR
- //qglClearColor(0,0,0,0);CHECKGLERROR
- //qglClear(GL_COLOR_BUFFER_BIT);CHECKGLERROR
+ qglClearColor(0,0,0,0);CHECKGLERROR
+ // when starting up a new video mode, make sure the screen is cleared to black
+ if (clear)
+ {
+ qglClear(GL_COLOR_BUFFER_BIT);CHECKGLERROR
+ }
//qglDisable(GL_CULL_FACE);CHECKGLERROR
//R_ClearScreen();
R_Textures_Frame();
texcoord2f[6] = 0;texcoord2f[7] = 1;
if (vid.stereobuffer)
{
- qglDrawBuffer(GL_BACK_LEFT);
+ qglDrawBuffer(GL_FRONT_LEFT);
R_Mesh_Draw(0, 4, 2, polygonelements);
- qglDrawBuffer(GL_BACK_RIGHT);
+ qglDrawBuffer(GL_FRONT_RIGHT);
R_Mesh_Draw(0, 4, 2, polygonelements);
}
else
{
- qglDrawBuffer(GL_BACK);
+ qglDrawBuffer(GL_FRONT);
R_Mesh_Draw(0, 4, 2, polygonelements);
}
R_Mesh_Finish();
// refresh
- VID_Finish(false);
+ // not necessary when rendering to GL_FRONT buffers
+ //VID_Finish(false);
}
void CL_UpdateScreen(void)
char_texture = Draw_CachePic("gfx/conchars", true)->tex;
for (i = 1;i <= NUMCROSSHAIRS;i++)
r_crosshairs[i] = Draw_CachePic(va("gfx/crosshair%i", i), true);
+
+ // draw the loading screen so people have something to see in the newly opened window
+ SCR_UpdateLoadingScreen(true);
}
static void gl_draw_shutdown(void)