diff options
Diffstat (limited to 'gltfview/src/game.h')
| -rw-r--r-- | gltfview/src/game.h | 34 |
1 files changed, 9 insertions, 25 deletions
diff --git a/gltfview/src/game.h b/gltfview/src/game.h index 2a7b7ef..53725c7 100644 --- a/gltfview/src/game.h +++ b/gltfview/src/game.h | |||
| @@ -1,19 +1,13 @@ | |||
| 1 | /* | ||
| 2 | * Header file defining the game state, included by plugins. | ||
| 3 | */ | ||
| 1 | #pragma once | 4 | #pragma once |
| 2 | 5 | ||
| 3 | #include <gfx/gfx.h> | ||
| 4 | #include <gfx/render_backend.h> | ||
| 5 | #include <gfx/renderer.h> | ||
| 6 | #include <gfx/scene/camera.h> | ||
| 7 | #include <gfx/scene/node.h> | ||
| 8 | #include <gfx/scene/scene.h> | ||
| 9 | |||
| 10 | #include <stdbool.h> | ||
| 11 | |||
| 12 | typedef struct Plugin Plugin; | ||
| 13 | typedef struct PluginEngine PluginEngine; | 6 | typedef struct PluginEngine PluginEngine; |
| 14 | 7 | typedef struct Plugin Plugin; | |
| 15 | /// The delta time the game should be updated with. | 8 | typedef struct Gfx Gfx; |
| 16 | static const double game_dt = 1.0 / 60.0; | 9 | typedef struct Scene Scene; |
| 10 | typedef struct SceneCamera SceneCamera; | ||
| 17 | 11 | ||
| 18 | /// Game state. | 12 | /// Game state. |
| 19 | typedef struct { | 13 | typedef struct { |
| @@ -22,16 +16,6 @@ typedef struct { | |||
| 22 | PluginEngine* plugin_engine; | 16 | PluginEngine* plugin_engine; |
| 23 | Plugin* plugin; | 17 | Plugin* plugin; |
| 24 | Gfx* gfx; | 18 | Gfx* gfx; |
| 25 | Scene* scene; | 19 | Scene* scene; // TODO: Move scene graph to plugin? |
| 26 | SceneCamera* camera; | 20 | SceneCamera* camera; // TODO: Move too. |
| 27 | } Game; | 21 | } Game; |
| 28 | |||
| 29 | bool game_new(Game*, int argc, const char** argv); | ||
| 30 | |||
| 31 | void game_end(Game*); | ||
| 32 | |||
| 33 | void game_update(Game*, double t, double dt); | ||
| 34 | |||
| 35 | void game_render(const Game*); | ||
| 36 | |||
| 37 | void game_set_viewport(Game*, int width, int height); | ||
