From 6b8af9cf83851c075c6c9514b1deaa931c2b19a4 Mon Sep 17 00:00:00 2001 From: Thomas Guillermo Albers Raviola Date: Fri, 16 Jan 2026 23:02:32 +0100 Subject: Initial commit --- 09-september/game.h | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 09-september/game.h (limited to '09-september/game.h') 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 -- cgit v1.2.3