#pragma once // System #include #include #include #include #include #include #include #include #include #include #include #include // 3rd Party #include #include const char* WINDOW_TITLE = "Untitled Game"; const int TARGET_FRAME_TIME = 16; const int WINDOW_WIDTH = 1280; const int WINDOW_HEIGHT = 960; const int RENDER_WIDTH = 320; const int RENDER_HEIGHT = 240; const size_t ENGINE_MEMORY_SIZE = 8U * 1024U * 1024U; const size_t GAME_MEMORY_SIZE = 8U * 1024U * 1024U; const size_t SCRATCH_MEMORY_SIZE = 8U * 1024U * 1024U; const float VIEWPORT_WIDTH = (float)RENDER_WIDTH * WINDOW_HEIGHT / RENDER_HEIGHT; const float VIEWPORT_HEIGHT = (float)RENDER_HEIGHT * WINDOW_HEIGHT / RENDER_HEIGHT; const float VIEWPORT_X = WINDOW_WIDTH/2 - VIEWPORT_WIDTH/2; const float VIEWPORT_Y = WINDOW_HEIGHT/2 - VIEWPORT_HEIGHT/2; typedef struct input { bool up; bool down; bool left; bool right; bool select; bool interact; bool pause; int mouse_x_delta; int mouse_y_delta; } input_t; typedef struct memory { struct { size_t size; void* begin; void* current; void* end; } engine; struct { size_t size; void* begin; void* current; void* end; } game; struct { size_t size; void* begin; void* current; void* end; } scratch; } memory_t;