5#include "hellfire/graphics/renderer/SkyboxRenderer.h"
7#include <glm/gtc/type_ptr.hpp>
9#include "../core/Application.h"
14#include "Geometry/Cube.h"
15#include "hellfire/utilities/ServiceLocator.h"
26 skybox_mesh_ = Cube::create_mesh();
31 "assets/shaders/skybox.vert",
"assets/shaders/skybox.frag");
39 glDepthFunc(GL_LEQUAL);
43 glm::mat4 view = glm::mat4(glm::mat3(camera->get_view_matrix()));
44 glm::mat4 projection = camera->get_projection_matrix();
54 glActiveTexture(GL_TEXTURE0);
55 glBindTexture(GL_TEXTURE_CUBE_MAP, skybox.get_cubemap());
61 skybox_mesh_->unbind();
static Shader from_id(const uint32_t shader_id)
Shader & operator=(Shader &&other) noexcept
void set_float(const std::string &name, const float value) const
void set_int(const std::string &name, const int value) const
void set_vec3(const std::string &name, const float x, const float y, const float z) const
void load_skybox_shader()
uint32_t skybox_shader_id_
void render(const Skybox &skybox, const CameraComponent *camera) const
void setup_skybox_geometry()
float get_exposure() const