From d812e93dec4bcb81c2b5226b14c54dacf4fb860d Mon Sep 17 00:00:00 2001 From: "chirs241097@gmail.com" Date: Thu, 3 Apr 2014 03:19:21 +0000 Subject: Remove "high FPS mode", it won't reach 500 FPS on my computer any more. Replace it with Vsync mode. Add float HGE::Timer_GetFPSf(). The return value will be updated every 1000ms. --- hge/system.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'hge/system.cpp') diff --git a/hge/system.cpp b/hge/system.cpp index b914566..b32783b 100644 --- a/hge/system.cpp +++ b/hge/system.cpp @@ -200,6 +200,9 @@ bool CALL HGE_Impl::System_Initiate() t0=t0fps=SDL_GetTicks(); dt=cfps=0; nFPS=0; + nFPSf=0.0f; + Fcnt=0; + fUpdateFPSDelay=0.0f; // Show splash @@ -320,6 +323,13 @@ bool CALL HGE_Impl::System_Start() nFPS=cfps; cfps=0; t0fps=t0; _UpdatePowerStatus(); } + ++Fcnt;fUpdateFPSDelay+=fDeltaTime; + if(fUpdateFPSDelay>1) + { + nFPSf=Fcnt/fUpdateFPSDelay; + fUpdateFPSDelay=0.0f; + Fcnt=0; + } // Do user's stuff @@ -636,7 +646,6 @@ bool CALL HGE_Impl::System_Launch(const char *url) CFRelease(cfurl); return (err == noErr); #else - //STUBBED("launch URL"); char command[1024];sprintf(command,"xdg-open %s",url); system(command); return false; @@ -722,8 +731,11 @@ HGE_Impl::HGE_Impl() nHGEFPS=HGEFPS_UNLIMITED; fTime=0.0f; + fUpdateFPSDelay=0.0f; fDeltaTime=0.0f; nFPS=0; + nFPSf=0.0f; + Fcnt=0; procFrameFunc=0; procRenderFunc=0; -- cgit v1.2.3