hge source explor 0x8 timer
Posted YORU
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hge source explor 0x8 timer相关的知识,希望对你有一定的参考价值。
Timer |
时间部分,在hge中提供对于fps的控制,时间的控制等。
其中会用到的参数有。
hge_impl.h |
// Timer float fTime; float fDeltaTime; DWORD nFixedDelta; int nFPS; DWORD t0, t0fps, dt; int cfps; |
在system.cpp中使用到,用来控制帧率
if(dt >= nFixedDelta) { // fDeltaTime = time step in seconds returned by Timer_GetDelta fDeltaTime=dt/1000.0f; // Cap too large time steps usually caused by lost focus to avoid jerks if(fDeltaTime > 0.2f) { fDeltaTime = nFixedDelta ? nFixedDelta/1000.0f : 0.01f; } // Update time counter returned Timer_GetTime fTime += fDeltaTime; // Store current time for the next frame // and count FPS t0=timeGetTime(); if(t0-t0fps <= 1000) cfps++; else { nFPS=cfps; cfps=0; t0fps=t0; _UpdatePowerStatus(); } // Do user\'s stuff if(procFrameFunc()) break; if(procRenderFunc) procRenderFunc(); // If if "child mode" - return after processing single frame if(hwndParent) break; // Clean up input events that were generated by // WindowProc and weren\'t handled by user\'s code _ClearQueue(); // If we use VSYNC - we could afford a little // sleep to lower CPU usage // if(!bWindowed && nHGEFPS==HGEFPS_VSYNC) Sleep(1); } |
Timer_GetTime() |
返回一个游戏已经运行的时间。
float CALL GEImpl::Timer_GetTime() { return fTime; } |
Timer_GetDelta() |
返回时间间隔。
float CALL GEImpl::Timer_GetDelta() { return fDeltaTime; } |
Timer_GetFPS() |
返回fps。
int CALL GEImpl::Timer_GetFPS() { return nFPS; } |
以上是关于hge source explor 0x8 timer的主要内容,如果未能解决你的问题,请参考以下文章
hge source explor 0x4 input module
hge source explor 0x6 input module
hge source explor 0x3 windows module
hge source explor 0xB graphics Ⅱ