avoid setting cvars by name each frame

This commit is contained in:
Ludwig Nussel 2010-01-06 13:47:41 +00:00
parent 9b1a3387cb
commit 6f9b34ef75
5 changed files with 22 additions and 13 deletions

View file

@ -321,8 +321,6 @@ void CL_CaptureVoip(void)
dontCapture = qtrue; // not connected to a server. dontCapture = qtrue; // not connected to a server.
else if (!cl_connectedToVoipServer) else if (!cl_connectedToVoipServer)
dontCapture = qtrue; // server doesn't support VoIP. dontCapture = qtrue; // server doesn't support VoIP.
else if ( Cvar_VariableValue( "g_gametype" ) == GT_SINGLE_PLAYER || Cvar_VariableValue("ui_singlePlayerActive"))
dontCapture = qtrue; // single player game.
else if (clc.demoplaying) else if (clc.demoplaying)
dontCapture = qtrue; // playing back a demo. dontCapture = qtrue; // playing back a demo.
else if ( cl_voip->integer == 0 ) else if ( cl_voip->integer == 0 )

View file

@ -366,7 +366,11 @@ void CL_SystemInfoChanged( void ) {
// in the future, (val) will be a protocol version string, so only // in the future, (val) will be a protocol version string, so only
// accept explicitly 1, not generally non-zero. // accept explicitly 1, not generally non-zero.
s = Info_ValueForKey( systemInfo, "sv_voip" ); s = Info_ValueForKey( systemInfo, "sv_voip" );
cl_connectedToVoipServer = (atoi( s ) == 1); if ( Cvar_VariableValue( "g_gametype" ) == GT_SINGLE_PLAYER || Cvar_VariableValue("ui_singlePlayerActive"))
cl_connectedToVoipServer = qfalse;
else
cl_connectedToVoipServer = (atoi( s ) == 1);
#endif #endif
s = Info_ValueForKey( systemInfo, "sv_cheats" ); s = Info_ValueForKey( systemInfo, "sv_cheats" );

View file

@ -364,8 +364,6 @@ void SCR_DrawVoipMeter( void ) {
return; // not connected to a server. return; // not connected to a server.
else if (!cl_connectedToVoipServer) else if (!cl_connectedToVoipServer)
return; // server doesn't support VoIP. return; // server doesn't support VoIP.
else if ( Cvar_VariableValue( "g_gametype" ) == GT_SINGLE_PLAYER || Cvar_VariableValue("ui_singlePlayerActive"))
return; // single player game.
else if (clc.demoplaying) else if (clc.demoplaying)
return; // playing back a demo. return; // playing back a demo.
else if (!cl_voip->integer) else if (!cl_voip->integer)
@ -577,8 +575,10 @@ void SCR_UpdateScreen( void ) {
// that case. // that case.
if( uivm || com_dedicated->integer ) if( uivm || com_dedicated->integer )
{ {
// XXX
extern cvar_t* r_anaglyphMode;
// if running in stereo, we need to draw the frame twice // if running in stereo, we need to draw the frame twice
if ( cls.glconfig.stereoEnabled || Cvar_VariableIntegerValue("r_anaglyphMode")) { if ( cls.glconfig.stereoEnabled || r_anaglyphMode->integer) {
SCR_DrawScreenField( STEREO_LEFT ); SCR_DrawScreenField( STEREO_LEFT );
SCR_DrawScreenField( STEREO_RIGHT ); SCR_DrawScreenField( STEREO_RIGHT );
} else { } else {

View file

@ -917,6 +917,14 @@ static void IN_ProcessEvents( void )
vidRestartTime = Sys_Milliseconds() + 1000; vidRestartTime = Sys_Milliseconds() + 1000;
} }
break; break;
case SDL_ACTIVEEVENT:
if (e.active.state & SDL_APPINPUTFOCUS) {
Cvar_SetValue( "com_unfocused", !e.active.gain);
}
if (e.active.state & SDL_APPACTIVE) {
Cvar_SetValue( "com_minimized", !e.active.gain);
}
break;
default: default:
break; break;
@ -972,6 +980,8 @@ IN_Init
*/ */
void IN_Init( void ) void IN_Init( void )
{ {
int appState;
if( !SDL_WasInit( SDL_INIT_VIDEO ) ) if( !SDL_WasInit( SDL_INIT_VIDEO ) )
{ {
Com_Error( ERR_FATAL, "IN_Init called before SDL_Init( SDL_INIT_VIDEO )\n" ); Com_Error( ERR_FATAL, "IN_Init called before SDL_Init( SDL_INIT_VIDEO )\n" );
@ -1009,6 +1019,10 @@ void IN_Init( void )
mouseAvailable = qfalse; mouseAvailable = qfalse;
} }
appState = SDL_GetAppState( );
Cvar_SetValue( "com_unfocused", !( appState & SDL_APPINPUTFOCUS ) );
Cvar_SetValue( "com_minimized", !( appState & SDL_APPACTIVE ) );
IN_InitJoystick( ); IN_InitJoystick( );
Com_DPrintf( "------------------------------------\n" ); Com_DPrintf( "------------------------------------\n" );
} }

View file

@ -561,13 +561,6 @@ int main( int argc, char **argv )
while( 1 ) while( 1 )
{ {
#ifndef DEDICATED
int appState = SDL_GetAppState( );
Cvar_SetValue( "com_unfocused", !( appState & SDL_APPINPUTFOCUS ) );
Cvar_SetValue( "com_minimized", !( appState & SDL_APPACTIVE ) );
#endif
IN_Frame( ); IN_Frame( );
Com_Frame( ); Com_Frame( );
} }