2 #include <Framework/IScene.h>
3 #include <Utility/Timer.h>
4 #include <Multimedia/Input.h>
5 #include <Framework/Camera.h>
14 std::list< std::shared_ptr<IScene> > scenes;
18 static Director& Single()
20 static Director instance;
31 if( Single().scenes.size() == 0 )
break;
32 Single().scenes.back()->Update();
33 Single().scenes.back()->Draw();
45 auto it = Single().scenes.begin();
47 while( it != Single().scenes.end() )
51 Single().scenes.remove( (*it) );
52 if(Single().scenes.size() == 0 )
break;
63 auto it = Single().scenes.begin();
64 while( it != Single().scenes.end() )
66 if( (*it).get() == scene )
68 Single().scenes.push_back( std::shared_ptr<IScene>(scene) );
69 Single().scenes.remove( (*it) );
76 Single().scenes.push_back( std::shared_ptr<IScene>(scene) );
void Update()
追跡方法や速度に応じてカメラ位置の更新.
Definition: Camera.h:138
static void SetActive(IScene *scene)
Sceneをアクティブにする.
Definition: Director.h:60
static bool Update(bool 描画更新フラグ=true)
各種更新処理をまとめて行う.
Definition: System.h:80
シーンのインターフェース.
Definition: IScene.h:6
static Camera * Now()
アクティブなカメラを取得.
Definition: Camera.h:54
static void Run()
実行開始.
Definition: Director.h:25
static void CheckFPS()
FPS計測を更新.
Definition: Timer.h:66
static void ResetFPS()
FPSの計測開始.
Definition: Timer.h:60
static void Remove()
消滅したSceneを片付ける.
Definition: Director.h:43