X-Git-Url: http://gitweb.pgornicz.com/gitweb.cgi?p=physics.git;a=blobdiff_plain;f=src%2Fmain.cpp;h=988f5d1e07a1d58735f996d8cb298491dc068e80;hp=05f9a25b09b484eac0503ff221cb0737e295ba9b;hb=5e0713e5967be038b1b0cc5f0ffbd0180e3f7099;hpb=6029825fe57b4a07ab4782b338d5c427c9e6af06
diff --git a/src/main.cpp b/src/main.cpp
index 05f9a25..988f5d1 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -15,9 +15,9 @@
* along with this program. If not, see .
*/
-#include
-#include
-using namespace pg;
+#include
+#include
+using namespace bear;
#include
using std::cout;
@@ -85,7 +85,9 @@ static float s_fAccDrawWait = 0;
static int s_iUPS, s_iFPS;
static int s_iUpdateCount, s_iDrawCount;
-static MICRO s_micLastSecond;
+
+static Ticks s_micLastSecond;
+static Timer s_timer;
static const float s_fGameStep = 10;
@@ -109,9 +111,13 @@ void mainInit()
installSignal();
debug::init();
+
+ s_timer.init();
}
void mainClean()
{
+ s_timer.fini();
+
debug::fini();
}
@@ -177,7 +183,7 @@ void run()
void updateFPSCounters()
{
// Check if a second has passed to recalculate UPS and FPS
- if (tickCountMicro() - s_micLastSecond >= 1000000)
+ if (s_timer.query() - s_micLastSecond >= 1000000)
{
s_iUPS = s_iUpdateCount;
s_iFPS = s_iDrawCount;
@@ -186,7 +192,7 @@ void updateFPSCounters()
s_iUpdateCount -= s_iUPS;
s_iDrawCount -= s_iFPS;
- s_micLastSecond = tickCountMicro();
+ s_micLastSecond = s_timer.query();
if(cfg::showFPS())
{
@@ -233,18 +239,20 @@ int startUpdateThread(void*)
{
updatesInit();
- s_micLastSecond = tickCountMicro();
+ s_micLastSecond = s_timer.query();
while(s_bIsRunning)
{
- MICRO time = tickCountMicro();
+ Timer timer;
+ timer.init();
handleInput();
update(s_fGameStep);
updateFPSCounters();
- time = tickCountMicro() - time;
+ const Ticks ticks = timer.query();
+ timer.fini();
- float wait = (1000000.0 / s_iTargetUPS - time);
+ float wait = (1000000.0 / s_iTargetUPS - ticks.microseconds());
s_fAccUpdateWait += 0 < wait ? wait : 0;
if(s_iMinWaitMicro < s_fAccUpdateWait)
@@ -266,11 +274,13 @@ int startDrawThread(void*)
while(s_bIsRunning)
{
- MICRO time = tickCountMicro();
+ Timer timer;
+ timer.init();
draw();
- time = tickCountMicro() - time;
+ const Ticks ticks = timer.query();
+ timer.fini();
- float wait = (1000000.0 / s_iTargetFPS - time);
+ float wait = (1000000.0 / s_iTargetFPS - ticks.microseconds());
s_fAccDrawWait += 0 < wait ? wait : 0;
if(s_iMinWaitMicro < s_fAccDrawWait)