Voxellancer  0.3
A game about voxels in space
 All Classes Functions Pages
game.h
1 #pragma once
2 
3 #include <memory>
4 
5 #include "gamestate.h"
6 
7 
8 class GamePlay;
9 class HMDManager;
10 class Viewer;
11 
16 class Game: public GameState {
17 public:
18  Game();
19  ~Game();
20 
21  static void setup();
22  static Game* instance();
23  static void tearDown();
24 
25  GamePlay& gamePlay();
26 
27  virtual const Scene& scene() const override;
28  virtual const CameraHead& cameraHead() const override;
29 
30  HMDManager& hmdManager();
31  Viewer& viewer();
32 
33  virtual void update(float deltaSec) override;
34  void draw();
35 
36 
37 protected:
38  static Game* s_instance;
39 
40  std::shared_ptr<HMDManager> m_hmdManager;
41  std::unique_ptr<Viewer> m_viewer;
42 
43  GamePlay* m_gamePlay;
44 };
45 
Definition: camerahead.h:12
Definition: gamestate.h:20
Definition: hmdmanager.h:13
virtual void update(float deltaSec) override
Definition: game.cpp:60
Definition: scene.h:14
Definition: game.h:16
Definition: viewer.h:12
Definition: gameplay.h:20