X-Git-Url: https://git.lukelau.me/?p=opengl.git;a=blobdiff_plain;f=skybox.cpp;h=5c510e5863766043e29f0f17a59d813abdf03083;hp=cb79fb327f913c40858c77e09ecf996dfe1a7ea1;hb=511a2c92fcb9dda82dd5d38b91ea03790d0cb7b2;hpb=0291188124d08368ce28b308482604218bd75393 diff --git a/skybox.cpp b/skybox.cpp index cb79fb3..5c510e5 100644 --- a/skybox.cpp +++ b/skybox.cpp @@ -106,15 +106,17 @@ Skybox::Skybox(const Image img): program("skyboxvert.glsl", "skyboxfrag.glsl") { glGenFramebuffers(1, &captureFBO); glGenRenderbuffers(1, &captureRBO); + constexpr GLuint CUBEMAP_WIDTH = 1024, CUBEMAP_HEIGHT = 1024; + glBindFramebuffer(GL_FRAMEBUFFER, captureFBO); glBindRenderbuffer(GL_RENDERBUFFER, captureRBO); - glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, 512, 512); + glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, CUBEMAP_WIDTH, CUBEMAP_HEIGHT); glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, captureFBO); // setup cubemap texture glBindTexture(GL_TEXTURE_CUBE_MAP, cubemapTexId); for (GLuint i = 0; i < 6; i++) - glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, GL_RGB16F, 512, 512, 0, GL_RGB, GL_FLOAT, nullptr); + glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, GL_RGB16F, CUBEMAP_WIDTH, CUBEMAP_HEIGHT, 0, GL_RGB, GL_FLOAT, nullptr); glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE); @@ -131,7 +133,7 @@ Skybox::Skybox(const Image img): program("skyboxvert.glsl", "skyboxfrag.glsl") { glActiveTexture(GL_TEXTURE0); glBindTexture(GL_TEXTURE_2D, hdrTexId); - glViewport(0, 0, 512, 512); + glViewport(0, 0, CUBEMAP_WIDTH, CUBEMAP_HEIGHT); glBindFramebuffer(GL_FRAMEBUFFER, captureFBO); for (GLuint i = 0; i < 6; i++) { glUniformMatrix4fv(glGetUniformLocation(equiProg.progId, "view"), 1, GL_FALSE, glm::value_ptr(captureViews[i]));