diff options
Diffstat (limited to '09-september/game.h')
| -rw-r--r-- | 09-september/game.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/09-september/game.h b/09-september/game.h new file mode 100644 index 0000000..3225d39 --- /dev/null +++ b/09-september/game.h @@ -0,0 +1,54 @@ +#ifndef GAME_H +#define GAME_H + +#include "tomcat/renderer/camera.h" +#include "player.h" +#include "tomcat/terrain.h" + +#include "tomcat/math/vector.h" +#include "tomcat/math/matrix4x4.h" + +#include "tomcat/input.h" + +#include "tomcat/util/util.h" +#include "tomcat/util/util_time.h" +#include "tomcat/renderer/renderer_types.h" +#include "tomcat/renderer/window.h" + +typedef enum +{ + MENU, + RUNNING, + EXIT +}GameState; + +#define NUM_ENTITIES 1 + +#define WINDOW_WIDTH 1024 +#define WINDOW_HEIGHT 768 +#define WINDOW_ASPECT_RATIO (float)WINDOW_WIDTH / (float)WINDOW_HEIGHT + +typedef struct _Game +{ + GameState gameState; + Shader *shaderProgram, *terrainProgram, *skyboxProgram, *particlesProgram; + + Entity ents[NUM_ENTITIES]; + Texture *normalMap[2]; + Texture *defaultNormalMap; + Terrain *terrain; + Skybox sky; + + Player player; + + Camera *camera; + Window *window; + ParticleSystem *s; +} Game; + +extern void LoadResources(Game *game); +extern void Draw(Game *game); +extern void ProcessInput(Game *game); +extern void CleanUp(Game *game); + +#endif // GAME_H |
