|
|
|
|
@ -90,6 +90,7 @@ struct SDLHandles
|
|
|
|
|
SDL_Window* window; |
|
|
|
|
SDL_GLContext sdl_gl_ctx; |
|
|
|
|
SDL_DisplayMode display_mode; |
|
|
|
|
u32 SDL_flags; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// TODO: node/tree structure for entities
|
|
|
|
|
@ -191,6 +192,7 @@ struct RenderState
|
|
|
|
|
|
|
|
|
|
#define DEFAULT_WIDTH 1280 |
|
|
|
|
#define DEFAULT_HEIGHT 720 |
|
|
|
|
#define DEFAULT_SDL_FLAGS SDL_WINDOW_OPENGL|SDL_WINDOW_RESIZABLE |
|
|
|
|
#define DEFAULT_MODEL_COUNT 256 |
|
|
|
|
#define DEFAULT_TEXTURE_COUNT 64 |
|
|
|
|
#define DEFAULT_SHADER_COUNT 64 |
|
|
|
|
@ -201,6 +203,7 @@ struct RenderState
|
|
|
|
|
#define DEFAULT_MAX_LIGHTS 32 // NOTE: needs to match NUM_LIGHTS in shaders
|
|
|
|
|
RenderState* initRenderState(const char* window_title = "tangerine", |
|
|
|
|
uvec2 window_dims = uvec2(DEFAULT_WIDTH, DEFAULT_HEIGHT), |
|
|
|
|
u32 SDL_flags = DEFAULT_SDL_FLAGS, |
|
|
|
|
GLClearColor clear_col = DEFAULT_CLEAR_COLOR, |
|
|
|
|
vec4 ambient_color = DEFAULT_AMBIENT_COLOR, |
|
|
|
|
u32 max_models = DEFAULT_MODEL_COUNT, |
|
|
|
|
|