Do not use the srgb flag for textures that explicitly define storage
authorMikko Rasa <tdb@tdb.fi>
Tue, 4 Jun 2019 07:23:39 +0000 (10:23 +0300)
committerMikko Rasa <tdb@tdb.fi>
Tue, 4 Jun 2019 07:23:39 +0000 (10:23 +0300)
Presumably the texture author knows which colorspace the texture uses.
In particular this made it impossible to load non-color textures such
as normal maps which require a linear colorspace if the srgb flag was
set in the containing resource collection.

source/texture1d.cpp
source/texture2d.cpp
source/texture3d.cpp
source/texturecube.cpp

index 7466a9efa2bc0d0fb3ef9b48f2330bb8499b59cf..e746409b8101dfca984017761e5a46998927edf8 100644 (file)
@@ -160,8 +160,6 @@ void Texture1D::Loader::raw_data(const string &data)
 
 void Texture1D::Loader::storage(PixelFormat fmt, unsigned w)
 {
-       if(srgb)
-               fmt = get_srgb_pixelformat(fmt);
        obj.storage(fmt, w);
 }
 
index 45c2e665d056973ee4ecdb41eb6033dd831c2b5b..806e4a179bded9f8a71264ecce78bccafc529870 100644 (file)
@@ -218,8 +218,6 @@ void Texture2D::Loader::raw_data(const string &data)
 
 void Texture2D::Loader::storage(PixelFormat fmt, unsigned w, unsigned h)
 {
-       if(srgb)
-               fmt = get_srgb_pixelformat(fmt);
        obj.storage(fmt, w, h);
 }
 
index ed5619cb4aed30f567cf7e3e063a7ad05f60fd27..7c4b04469d23a0b17961543cf34ff9e21688977a 100644 (file)
@@ -256,8 +256,6 @@ void Texture3D::Loader::raw_data(const string &data)
 
 void Texture3D::Loader::storage(PixelFormat fmt, unsigned w, unsigned h, unsigned d)
 {
-       if(srgb)
-               fmt = get_srgb_pixelformat(fmt);
        obj.storage(fmt, w, h, d);
 }
 
index 03e65167d73fee7a1d89ba9ea3cea7ef2c68d81d..8306324153747078300a9b593d392d78f91cd5a6 100644 (file)
@@ -285,8 +285,6 @@ void TextureCube::Loader::raw_data(TextureCubeFace face, const string &data)
 
 void TextureCube::Loader::storage(PixelFormat fmt, unsigned s)
 {
-       if(srgb)
-               fmt = get_srgb_pixelformat(fmt);
        obj.storage(fmt, s);
 }