/* ================= GL_CreateContext ================= */ qboolean GL_CreateContext( void ) { int colorBits[3]; #ifdef XASH_NANOGL nanoGL_Init(); #endif if( ( glw_state.context = SDL_GL_CreateContext( host.hWnd ) ) == NULL) { MsgDev(D_ERROR, "GL_CreateContext: %s\n", SDL_GetError()); return GL_DeleteContext(); } SDL_GL_GetAttribute( SDL_GL_RED_SIZE, &colorBits[0] ); SDL_GL_GetAttribute( SDL_GL_GREEN_SIZE, &colorBits[1] ); SDL_GL_GetAttribute( SDL_GL_BLUE_SIZE, &colorBits[2] ); glConfig.color_bits = colorBits[0] + colorBits[1] + colorBits[2]; SDL_GL_GetAttribute( SDL_GL_ALPHA_SIZE, &glConfig.alpha_bits ); SDL_GL_GetAttribute( SDL_GL_DEPTH_SIZE, &glConfig.depth_bits ); SDL_GL_GetAttribute( SDL_GL_STENCIL_SIZE, &glConfig.stencil_bits ); glState.stencilEnabled = glConfig.stencil_bits ? true : false; SDL_GL_GetAttribute( SDL_GL_MULTISAMPLESAMPLES, &glConfig.msaasamples ); #ifdef XASH_WES void wes_init(); wes_init(); #endif return true; }
/* ================= GL_UpdateContext ================= */ qboolean GL_UpdateContext( void ) { if(!( SDL_GL_MakeCurrent( host.hWnd, glw_state.context ) ) ) { MsgDev(D_ERROR, "GL_UpdateContext: %s", SDL_GetError()); return GL_DeleteContext(); } return true; }
/* ================= GL_CreateContext ================= */ qboolean GL_CreateContext( void ) { #ifdef XASH_SDL if( ( glw_state.context = SDL_GL_CreateContext( host.hWnd ) ) == NULL) { MsgDev(D_ERROR, "GL_CreateContext: %s\n", SDL_GetError()); return GL_DeleteContext(); } #endif return true; }
/* ================== R_Free_OpenGL ================== */ void R_Free_OpenGL( void ) { GL_DeleteContext (); VID_DestroyWindow (); SDL_GL_UnloadLibrary (); // now all extensions are disabled Q_memset( glConfig.extension, 0, sizeof( glConfig.extension[0] ) * GL_EXTCOUNT ); glw_state.initialized = false; }
/* ================== R_Free_OpenGL ================== */ void R_Free_OpenGL( void ) { VID_RestoreGamma (); GL_DeleteContext (); VID_DestroyWindow (); #ifdef XASH_SDL SDL_GL_UnloadLibrary (); #endif // now all extensions are disabled Q_memset( glConfig.extension, 0, sizeof( glConfig.extension[0] ) * GL_EXTCOUNT ); glw_state.initialized = false; }
/* ================= GL_CreateContext ================= */ qboolean GL_CreateContext( void ) { nanoGL_Init(); /*if( !Sys_CheckParm( "-gldebug" ) || host.developer < 1 ) // debug bit the kills perfomance return true;*/ #ifdef XASH_SDL if( ( glw_state.context = SDL_GL_CreateContext( host.hWnd ) ) == NULL) { MsgDev(D_ERROR, "GL_CreateContext: %s\n", SDL_GetError()); return GL_DeleteContext(); } #endif return true; }