#pragma once #if defined (_WIN32) #include #else #include #endif #include #include #include "camera.h" #include "entity.h" #include "util.h" #include "shader_program.h" struct SDL_Handles { SDL_Window *window; SDL_GLContext glContext; SDL_DisplayMode currentDisplayMode; }; struct point_light { uint light_ID; glm::vec3 position; glm::vec3 color; float intensity; }; /* // NOTE: array of entities rendered with the same shader program struct render_group { entity* entities; uint entity_count; shader_program shader; }; */ struct render_state { v2i viewport_dims; bool is_debug_draw; SDL_Handles handles; camera cam; util_RGBA clear_col; //render_group* render_groups; //uint render_group_count; point_light* lights; uint num_lights; uint max_lights; }; render_state* renInit(); void renShutdown(render_state* rs); void renRenderFrame(render_state* rs);