本文整理汇总了C++中WorldState::OnEnter方法的典型用法代码示例。如果您正苦于以下问题:C++ WorldState::OnEnter方法的具体用法?C++ WorldState::OnEnter怎么用?C++ WorldState::OnEnter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WorldState
的用法示例。
在下文中一共展示了WorldState::OnEnter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Load
void Load(int resolutionWidth, int resolutionHeight)
{
//The game is being freshly initialized, create a default graph.
if (NULL == g_GameGraph)
{
srand(time(NULL));
g_GameGraph = new GameGraph(g_Device, g_Driver, g_OhrResourceManager);
g_GameGraph->SetResolutionWidth(resolutionWidth);
g_GameGraph->SetResolutionHeight(resolutionHeight);
//TODO: This is for testing, should actually display a title screen and prompt user
//for action loading world either from a save file or creating anew.
WorldState* worldState = new WorldState();
RunningState* runningState = new RunningState();
g_GameGraph->SetWorldState(worldState);
g_GameGraph->AddGameState("running", runningState);
g_GameGraph->SetCurrentState(runningState);
worldState->OnEnter(g_GameGraph);
runningState->OnEnter(g_GameGraph);
}
else
{
//The game graph has already been loaded. Update its resolution settings and
//tell it to reload with the new device and driver.
g_GameGraph->SetResolutionWidth(resolutionWidth);
g_GameGraph->SetResolutionHeight(resolutionHeight);
g_GameGraph->Reload(g_Device, g_Driver);
}
//Initialze SceneManager position
g_GameGraph->GetSceneManager()->getRootSceneNode()->setPosition(
vector3df(0.0f, 0.0f, 0.0f));
vector3df position(0.000000f, 0.000000f, -4.000000f);
vector3df target(0.000000f, 0.000000f, -1.000000f);
//Create portrait and landscape camera
CreateCamera(resolutionWidth, resolutionHeight, position, target);
//Select the appropriate one for use
if (resolutionWidth > resolutionHeight)
{
g_GameGraph->GetSceneManager()->setActiveCamera(landscapeCamera);
}
else
{
g_GameGraph->GetSceneManager()->setActiveCamera(portraitCamera);
}
}