本文整理汇总了C++中StateManager::Frame方法的典型用法代码示例。如果您正苦于以下问题:C++ StateManager::Frame方法的具体用法?C++ StateManager::Frame怎么用?C++ StateManager::Frame使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类StateManager
的用法示例。
在下文中一共展示了StateManager::Frame方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
//-----------------------------------------------------------------------------
// Entry point for the application.
//-----------------------------------------------------------------------------
int main ( )
{
// Create our state manager.
StateManager stateManager;
// Push a new TestStateOne object into our stateManager object.
// When we do this the state manager internally calls the
// Init() function of the state being pushed in.
stateManager.Push( new TestStateOne ( ) );
// The frame() function of the stateManager object calls the
// frame() function of the current state. This is the place
// where all logical syntax will be executed.
stateManager.Frame();
// The render() function of the stateManager object calls the
// render() function of the current state. This is the place
// where all rendering syntax will be executed.
stateManager.Render();
// We now are pushing a TestStateTwo object into our stateManager
// object. The testStateOne object still exist inside our
// stateManager. Because the testStateTwo object is at the top
// of the internal stateManager vector container, it takes focus.
stateManager.Push( new TestStateTwo ( ) );
stateManager.Frame();
stateManager.Render();
// We now are removing the current state from stateManager.
// This means testStateOne is back in focus. This is where
// any custom shutdown syntax would go.
stateManager.Pop();
// For demonstration purposes we are going to go ahead and
// push a new TestStateTwo object into the stateManager.
stateManager.Push( new TestStateTwo ( ) );
// By calling this function we are going to be removing both
// the testStateOne object and the testStateTwo object from
// our stateManager.
stateManager.PopAll();
return 0;
}