2009年4月15日:
在main函数中定义了一个窗口,在消息循环中接受消息,
while( PeekMessage( &msg, NULL, 0, 0, PM_REMOVE ) )
{
if( msg.message == WM_QUIT)
{
//stop loop if it's a quit message
bDone = true;
}
else
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
}
if (msg.message != WM_QUIT )
{
//update
g_GameWorld->Update(timer.TimeElapsed());
//render
RedrawWindow(hWnd, false);
Sleep(2);
}
}//end while
这个表示,如果不是推出的话就更新g_GameWorld和渲染窗口,在g_GameWorld更新方法中则是m_Vehicles[a]->Update(time_elapsed);更新交通工具,更新交通工具则是计算速度,加速度法向量等数据。交通工具更新时会有状态的更新World()->CellSpace()->UpdateEntity(this, OldPos)。