X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=cl_demo.c;h=502a7fac4581fe0aa5ed7d9b51ecd3d1b5810651;hb=42e86ab7892c3d8f5373402a714b73b2e040d81b;hp=a962785fbf79e8f8fe178b562fce1b70c0c143b5;hpb=2ccc0bb94e77f4b95e4228178099c3a13fb17ea2;p=xonotic%2Fdarkplaces.git diff --git a/cl_demo.c b/cl_demo.c index a962785f..502a7fac 100644 --- a/cl_demo.c +++ b/cl_demo.c @@ -24,7 +24,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. extern cvar_t cl_capturevideo; extern cvar_t cl_capturevideo_demo_stop; #endif -int old_vsync = 0; static void CL_FinishTimeDemo (void); @@ -256,9 +255,8 @@ void CL_ReadDemoMessage(void) } if (cl_message.cursize > cl_message.maxsize) { - Con_Printf("Demo message (%i) > cl_message.maxsize (%i)", cl_message.cursize, cl_message.maxsize); + CL_DisconnectEx(false, "Demo message (%i) > cl_message.maxsize (%i)", cl_message.cursize, cl_message.maxsize); cl_message.cursize = 0; - CL_Disconnect(); return; } VectorCopy(cl.mviewangles[0], cl.mviewangles[1]); @@ -422,10 +420,7 @@ void CL_PlayDemo(const char *demo) cls.demostarting = true; // disconnect from server - if(cls.state == ca_connected) - CL_Disconnect(); - if(sv.active) - SV_Shutdown(); + CL_Disconnect(); // update networking ports (this is mainly just needed at startup) NetConn_UpdateSockets(); @@ -514,7 +509,7 @@ static void CL_FinishTimeDemo (void) fpsmax = cls.td_onesecondmaxfps; // LadyHavoc: timedemo now prints out 7 digits of fraction, and min/avg/max Con_Printf("%i frames %5.7f seconds %5.7f fps, one-second fps min/avg/max: %.0f %.0f %.0f (%i seconds)\n", frames, time, totalfpsavg, fpsmin, fpsavg, fpsmax, cls.td_onesecondavgcount); - Log_Printf("benchmark.log", "date %s | enginedate %s | demo %s | commandline %s | run %d | result %i frames %5.7f seconds %5.7f fps, one-second fps min/avg/max: %.0f %.0f %.0f (%i seconds)\n", Sys_TimeString("%Y-%m-%d %H:%M:%S"), buildstring, cls.demoname, cmdline.string, benchmark_runs + 1, frames, time, totalfpsavg, fpsmin, fpsavg, fpsmax, cls.td_onesecondavgcount); + Log_Printf("benchmark.log", "date %s | enginedate %s | demo %s | commandline %s | run %d | result %i frames %5.7f seconds %5.7f fps, one-second fps min/avg/max: %.0f %.0f %.0f (%i seconds)\n", Sys_TimeString("%Y-%m-%d %H:%M:%S"), engineversion, cls.demoname, cmdline.string, benchmark_runs + 1, frames, time, totalfpsavg, fpsmin, fpsavg, fpsmax, cls.td_onesecondavgcount); if (Sys_CheckParm("-benchmark")) { ++benchmark_runs; @@ -590,6 +585,9 @@ static void CL_FinishTimeDemo (void) else host.state = host_shutdown; } + + // Might need to re-enable vsync + Cvar_Callback(&vid_vsync); } /* @@ -622,6 +620,9 @@ void CL_TimeDemo_f(cmd_state_t *cmd) cls.timedemo = host.restless = true; cls.td_frames = -2; // skip the first frame cls.demonum = -1; // stop demo loop + + // Might need to disable vsync + Cvar_Callback(&vid_vsync); } /* @@ -683,8 +684,8 @@ static void CL_Demos_f(cmd_state_t *cmd) return; if (cls.demonum == -1) cls.demonum = 1; - CL_Disconnect_f (cmd); - CL_NextDemo (); + CL_Disconnect(); + CL_NextDemo(); } /*