BuddhaLib::GameTime Struct Reference

ゲーム時刻をあらわす構造体 More...

#include <BuddhaGameTime.h>

List of all members.

Public Member Functions

 GameTime (void)
 コンストラクタ
 GameTime (TimeSpan &totalRealTime, TimeSpan &elapsedRealTime, TimeSpan &totalGameTime, TimeSpan &elapsedGameTime)
 コンストラクタ
 GameTime (TimeSpan &totalRealTime, TimeSpan &elapsedRealTime, TimeSpan &totalGameTime, TimeSpan &elapsedGameTime, bool isRunningSlowly)
 コンストラクタ
bool IsRunningSlowly ()
 ゲームループが TargetElapsedTime より時間がかかっているかどうかを示す値を取得する

Public Attributes

TimeSpan TotalRealTime
 ゲームがスタートしてからの実時間(壁時計)の経過時間間隔
TimeSpan ElapsedRealTime
 最後のフレームからの実時間(壁時計)の経過時間間隔
TimeSpan TotalGameTime
 ゲームがスタートしてからの経過時間間隔
TimeSpan ElapsedGameTime
 最後のフレームからの経過時間間隔


Detailed Description

ゲーム時刻をあらわす構造体

この構造体は TimeSpan 構造体を利用して、ゲームが起動してからのタイムスパン(時間間隔の量)と、 前のフレームからのタイムスパンを提供する。 BuddhaLib::Game は固定フレーム方式を採っているため、 Game::Update() が1秒間に30回呼び出しが あると期待することができる。この期待値がゲーム時間の値であり、 ElapsedGameTime と TotalGameTime で提供されている。

通常 ElapsedGameTime == ElapsedRealTime であり、TotalGameTime == TotalRealTime である。

しかし、現実には、処理落ちが発生し、 Game::Draw() をスキップして Game::Update() を呼び出さなけ ればならない状況が発生する場合がある。このようなケースでは、 ElapsedGameTime と TotalGameTime にはバーチャルな値しか求めることができず、 ElapsedRealTime と TotalRealTime が「現実」の値を提供する。 このように、リアル時間とゲーム時間に違いが生じると、 IsRunningSlowly() は真を返すようになる。


Member Function Documentation

bool BuddhaLib::GameTime::IsRunningSlowly (  )  [inline]

ゲームループが TargetElapsedTime より時間がかかっているかどうかを示す値を取得する

Returns:
値が真の場合、いわゆる処理落ちが生じている
値が真の場合、ゲームループは処理落ち状態にあると考えられる。処理に追い付くために何かをし なければならない。


Generated on Fri Jun 29 16:49:20 2007 for BuddhaLib by  doxygen 1.5.2