コード例 #1
0
ファイル: tr_init.c プロジェクト: SonnyJim/ioq3
/*
===============
RE_Shutdown
===============
*/
void RE_Shutdown( qboolean destroyWindow ) {	

	ri.Printf( PRINT_ALL, "RE_Shutdown( %i )\n", destroyWindow );

	ri.Cmd_RemoveCommand ("modellist");
	ri.Cmd_RemoveCommand ("screenshotJPEG");
	ri.Cmd_RemoveCommand ("screenshot");
	ri.Cmd_RemoveCommand ("imagelist");
	ri.Cmd_RemoveCommand ("shaderlist");
	ri.Cmd_RemoveCommand ("skinlist");
	ri.Cmd_RemoveCommand ("gfxinfo");
	ri.Cmd_RemoveCommand("minimize");
	ri.Cmd_RemoveCommand( "modelist" );
	ri.Cmd_RemoveCommand( "shaderstate" );
	ri.Cmd_RemoveCommand( "gfxmeminfo" );


	if ( tr.registered ) {
		R_IssuePendingRenderCommands();
		R_ShutDownQueries();
		if (glRefConfig.framebufferObject)
			FBO_Shutdown();
		R_DeleteTextures();
		R_ShutdownVBOs();
		GLSL_ShutdownGPUShaders();
	}

	R_DoneFreeType();

	// shut down platform specific OpenGL stuff
	if ( destroyWindow ) {
		GLimp_Shutdown();

		Com_Memset( &glConfig, 0, sizeof( glConfig ) );
		Com_Memset( &glState, 0, sizeof( glState ) );
	}

	tr.registered = qfalse;
}
コード例 #2
0
ファイル: init.c プロジェクト: icanhas/yantar
/*
 * RE_Shutdown
 */
void
RE_Shutdown(qbool destroyWindow)
{

	ri.Printf(PRINT_ALL, "RE_Shutdown( %i )\n", destroyWindow);

	ri.cmdremove ("modellist");
	ri.cmdremove ("screenshotJPEG");
	ri.cmdremove ("screenshot");
	ri.cmdremove ("imagelist");
	ri.cmdremove ("shaderlist");
	ri.cmdremove ("skinlist");
	ri.cmdremove ("gfxinfo");
	ri.cmdremove("minimize");
	ri.cmdremove("modelist");
	ri.cmdremove("shaderstate");


	if(tr.registered){
		R_SyncRenderThread();
		R_ShutdownCommandBuffers();
		R_ShutDownQueries();
		R_DeleteTextures();
		R_ShutdownVBOs();
		FBO_Shutdown();
		GLSL_ShutdownGPUShaders();
	}

	R_DoneFreeType();

	/* shut down platform specific OpenGL stuff */
	if(destroyWindow){
		GLimp_Shutdown();
	}

	tr.registered = qfalse;
}