#ifndef CLIENT_RENDER_RENDER_HH_ #define CLIENT_RENDER_RENDER_HH_ #include #include #include #include #include #include #include #include #include #include // this has to go before SDL2 #include #include #include #include #include #include #include #include #include FT_FREETYPE_H #include "client/render/camera.hh" #include "client/render/program.hh" #include "shared/shared.hh" #include "shared/world.hh" namespace client { namespace render { void init(); void quit() noexcept; // Getters int get_fps() noexcept; SDL_Window* const& get_sdl_window() noexcept; const glm::ivec2& get_window_size() noexcept; // Update void update_uniforms() noexcept; void swap_window() noexcept; // Render void render_rectangle(const glm::vec2& pos, const glm::vec2& size, const glm::vec4& colour) noexcept; void render_text(const std::string_view text, const unsigned int size, const bool is_centered, const bool is_vcentered, const glm::vec4& colour, const glm::mat4& matrix) noexcept; void render_cube_outline(const glm::vec3& pos, const glm::vec4& colour) noexcept; } // namespace render } // namespace client #endif