Fix skybox images not using the right data layout
authorLuke Lau <luke_lau@icloud.com>
Sun, 9 Feb 2020 23:53:59 +0000 (23:53 +0000)
committerLuke Lau <luke_lau@icloud.com>
Sun, 9 Feb 2020 23:53:59 +0000 (23:53 +0000)
Something changed in ImageIO or OpenGL that caused UNSIGNED_SHORTS to be treated differently from GL_HALF_FLOAT

skybox.cpp

index 5c510e5863766043e29f0f17a59d813abdf03083..d668d76d7025fc1f865ba477632ade63b72d7f85 100644 (file)
@@ -95,7 +95,7 @@ Skybox::Skybox(const Image img): program("skyboxvert.glsl", "skyboxfrag.glsl") {
        
        glBindTexture(GL_TEXTURE_2D, hdrTexId);
 
        
        glBindTexture(GL_TEXTURE_2D, hdrTexId);
 
-       glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB16, img.width(), img.height(), 0, GL_RGB, GL_UNSIGNED_SHORT, (unsigned short*)img.data());
+       glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB16F, img.width(), img.height(), 0, GL_RGB, GL_HALF_FLOAT, (uint16_t*)img.data());
 
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
 
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);