#ifndef _PIUMA_RENDER_STATE_H_ #define _PIUMA_RENDER_STATE_H_ #include "shader.h" #include "primitives.h" struct r_state { // Shaders r_shader shader_2d; r_shader shader_postprocessing; r_shader shader_pbr; r_shader shader_shadow_map; r_shader shader_environment_map; // Screen size u32 width, height; // Time f64 time; // Framebuffers r_framebuffer *current_framebuffer; r_framebuffer framebuffer_SCREEN; r_framebuffer framebuffer_HUD; r_framebuffer framebuffer_3D; // Quads u32 gl_screen_quad_VAO; u32 gl_screen_quad_VBO; // Parameters s32 max_texture_size; }; extern r_state r_render_state; #endif