diff options
| -rw-r--r-- | indra/llrender/llglslshader.cpp | 14 | ||||
| -rw-r--r-- | indra/llrender/llglslshader.h | 8 | ||||
| -rw-r--r-- | indra/llrender/llrender.cpp | 18 | ||||
| -rw-r--r-- | indra/llrender/llrender.h | 5 | ||||
| -rw-r--r-- | indra/llrender/llrendertarget.cpp | 1 | 
5 files changed, 12 insertions, 34 deletions
| diff --git a/indra/llrender/llglslshader.cpp b/indra/llrender/llglslshader.cpp index daa768e8ab..a157bfee21 100644 --- a/indra/llrender/llglslshader.cpp +++ b/indra/llrender/llglslshader.cpp @@ -1087,17 +1087,17 @@ void LLGLSLShader::unbind(void)      sCurBoundShaderPtr = NULL;  } -S32 LLGLSLShader::bindTexture(const std::string& uniform, LLTexture* texture, LLTexUnit::eTextureType mode, LLTexUnit::eTextureColorSpace colorspace) +S32 LLGLSLShader::bindTexture(const std::string& uniform, LLTexture* texture, LLTexUnit::eTextureType mode)  {      LL_PROFILE_ZONE_SCOPED_CATEGORY_SHADER;      S32 channel = 0;      channel = getUniformLocation(uniform); -    return bindTexture(channel, texture, mode, colorspace); +    return bindTexture(channel, texture, mode);  } -S32 LLGLSLShader::bindTexture(S32 uniform, LLTexture* texture, LLTexUnit::eTextureType mode, LLTexUnit::eTextureColorSpace colorspace) +S32 LLGLSLShader::bindTexture(S32 uniform, LLTexture* texture, LLTexUnit::eTextureType mode)  {      LL_PROFILE_ZONE_SCOPED_CATEGORY_SHADER; @@ -1113,7 +1113,6 @@ S32 LLGLSLShader::bindTexture(S32 uniform, LLTexture* texture, LLTexUnit::eTextu      if (uniform > -1)      {          gGL.getTexUnit(uniform)->bindFast(texture); -        gGL.getTexUnit(uniform)->setTextureColorSpace(colorspace);      }      return uniform; @@ -1194,7 +1193,7 @@ S32 LLGLSLShader::getTextureChannel(S32 uniform) const      return mTexture[uniform];  } -S32 LLGLSLShader::enableTexture(S32 uniform, LLTexUnit::eTextureType mode, LLTexUnit::eTextureColorSpace space) +S32 LLGLSLShader::enableTexture(S32 uniform, LLTexUnit::eTextureType mode)  {      LL_PROFILE_ZONE_SCOPED_CATEGORY_SHADER; @@ -1211,12 +1210,11 @@ S32 LLGLSLShader::enableTexture(S32 uniform, LLTexUnit::eTextureType mode, LLTex      {          gGL.getTexUnit(index)->activate();          gGL.getTexUnit(index)->enable(mode); -        gGL.getTexUnit(index)->setTextureColorSpace(space);      }      return index;  } -S32 LLGLSLShader::disableTexture(S32 uniform, LLTexUnit::eTextureType mode, LLTexUnit::eTextureColorSpace space) +S32 LLGLSLShader::disableTexture(S32 uniform, LLTexUnit::eTextureType mode)  {      LL_PROFILE_ZONE_SCOPED_CATEGORY_SHADER; @@ -1229,7 +1227,7 @@ S32 LLGLSLShader::disableTexture(S32 uniform, LLTexUnit::eTextureType mode, LLTe      S32 index = mTexture[uniform];      if (index != -1 && gGL.getTexUnit(index)->getCurrType() != LLTexUnit::TT_NONE)      { -        if (gDebugGL && gGL.getTexUnit(index)->getCurrType() != mode && gGL.getTexUnit(index)->getCurrColorSpace() != space) +        if (gDebugGL && gGL.getTexUnit(index)->getCurrType() != mode)          {              if (gDebugSession)              { diff --git a/indra/llrender/llglslshader.h b/indra/llrender/llglslshader.h index f3c41cd819..913feb6a3f 100644 --- a/indra/llrender/llglslshader.h +++ b/indra/llrender/llglslshader.h @@ -249,16 +249,16 @@ public:      //if given texture uniform is active in the shader,      //the corresponding channel will be active upon return      //returns channel texture is enabled in from [0-MAX) -    S32 enableTexture(S32 uniform, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE, LLTexUnit::eTextureColorSpace space = LLTexUnit::TCS_LINEAR); -    S32 disableTexture(S32 uniform, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE, LLTexUnit::eTextureColorSpace space = LLTexUnit::TCS_LINEAR); +    S32 enableTexture(S32 uniform, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE); +    S32 disableTexture(S32 uniform, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE);      // get the texture channel of the given uniform, or -1 if uniform is not used as a texture      S32 getTextureChannel(S32 uniform) const;      // bindTexture returns the texture unit we've bound the texture to.      // You can reuse the return value to unbind a texture when required. -    S32 bindTexture(const std::string& uniform, LLTexture* texture, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE, LLTexUnit::eTextureColorSpace space = LLTexUnit::TCS_LINEAR); -    S32 bindTexture(S32 uniform, LLTexture* texture, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE, LLTexUnit::eTextureColorSpace space = LLTexUnit::TCS_LINEAR); +    S32 bindTexture(const std::string& uniform, LLTexture* texture, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE); +    S32 bindTexture(S32 uniform, LLTexture* texture, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE);      S32 bindTexture(const std::string& uniform, LLRenderTarget* texture, bool depth = false, LLTexUnit::eTextureFilterOptions mode = LLTexUnit::TFO_BILINEAR);      S32 bindTexture(S32 uniform, LLRenderTarget* texture, bool depth = false, LLTexUnit::eTextureFilterOptions mode = LLTexUnit::TFO_BILINEAR, U32 index = 0);      S32 unbindTexture(const std::string& uniform, LLTexUnit::eTextureType mode = LLTexUnit::TT_TEXTURE); diff --git a/indra/llrender/llrender.cpp b/indra/llrender/llrender.cpp index 1301d325a0..3572419a7a 100644 --- a/indra/llrender/llrender.cpp +++ b/indra/llrender/llrender.cpp @@ -115,7 +115,7 @@ static const GLenum sGLBlendFactor[] =  LLTexUnit::LLTexUnit(S32 index)      : mCurrTexType(TT_NONE), -    mCurrColorScale(1), mCurrAlphaScale(1), mCurrTexture(0), mTexColorSpace(TCS_LINEAR), +    mCurrColorScale(1), mCurrAlphaScale(1), mCurrTexture(0),      mHasMipMaps(false),      mIndex(index)  { @@ -145,8 +145,6 @@ void LLTexUnit::refreshState(void)      {          glBindTexture(GL_TEXTURE_2D, 0);      } - -    setTextureColorSpace(mTexColorSpace);  }  void LLTexUnit::activate(void) @@ -241,7 +239,6 @@ bool LLTexUnit::bind(LLTexture* texture, bool for_rendering, bool forceBind)                          setTextureAddressMode(gl_tex->mAddressMode);                          setTextureFilteringOption(gl_tex->mFilterOption);                      } -                    setTextureColorSpace(mTexColorSpace);                  }              }              else @@ -318,7 +315,6 @@ bool LLTexUnit::bind(LLImageGL* texture, bool for_rendering, bool forceBind, S32              setTextureFilteringOption(texture->mFilterOption);              stop_glerror();          } -        setTextureColorSpace(mTexColorSpace);      }      stop_glerror(); @@ -354,7 +350,6 @@ bool LLTexUnit::bind(LLCubeMap* cubeMap)                  setTextureAddressMode(cubeMap->mImages[0]->mAddressMode);                  setTextureFilteringOption(cubeMap->mImages[0]->mFilterOption);              } -            setTextureColorSpace(mTexColorSpace);              return true;          }          else @@ -403,7 +398,6 @@ bool LLTexUnit::bindManual(eTextureType type, U32 texture, bool hasMips)          mCurrTexture = texture;          glBindTexture(sGLTextureType[type], texture);          mHasMipMaps = hasMips; -        setTextureColorSpace(mTexColorSpace);      }      return true;  } @@ -424,8 +418,6 @@ void LLTexUnit::unbind(eTextureType type)      {          mCurrTexture = 0; -        // Always make sure our texture color space is reset to linear.  SRGB sampling should be opt-in in the vast majority of cases.  Also prevents color space "popping". -        mTexColorSpace = TCS_LINEAR;          if (type == LLTexUnit::TT_TEXTURE)          {              glBindTexture(sGLTextureType[type], sWhiteTexture); @@ -447,8 +439,6 @@ void LLTexUnit::unbindFast(eTextureType type)      {          mCurrTexture = 0; -        // Always make sure our texture color space is reset to linear.  SRGB sampling should be opt-in in the vast majority of cases.  Also prevents color space "popping". -        mTexColorSpace = TCS_LINEAR;          if (type == LLTexUnit::TT_TEXTURE)          {              glBindTexture(sGLTextureType[type], sWhiteTexture); @@ -642,11 +632,6 @@ void LLTexUnit::debugTextureUnit(void)      }  } -void LLTexUnit::setTextureColorSpace(eTextureColorSpace space) -{ -    mTexColorSpace = space; -} -  LLLightState::LLLightState(S32 index)  : mIndex(index),    mEnabled(false), @@ -1634,6 +1619,7 @@ void LLRender::flush()          {              HBXXH64 hash; +              U32 attribute_mask = LLGLSLShader::sCurBoundShaderPtr->mAttributeMask;              { diff --git a/indra/llrender/llrender.h b/indra/llrender/llrender.h index 010ab122b6..4aa33b7427 100644 --- a/indra/llrender/llrender.h +++ b/indra/llrender/llrender.h @@ -219,17 +219,12 @@ public:      void setHasMipMaps(bool hasMips) { mHasMipMaps = hasMips; } -    void setTextureColorSpace(eTextureColorSpace space); - -    eTextureColorSpace getCurrColorSpace() { return mTexColorSpace; } -  protected:      friend class LLRender;      S32                 mIndex;      U32                 mCurrTexture;      eTextureType        mCurrTexType; -    eTextureColorSpace  mTexColorSpace;      S32                 mCurrColorScale;      S32                 mCurrAlphaScale;      bool                mHasMipMaps; diff --git a/indra/llrender/llrendertarget.cpp b/indra/llrender/llrendertarget.cpp index 21a0820d32..38bc5ff331 100644 --- a/indra/llrender/llrendertarget.cpp +++ b/indra/llrender/llrendertarget.cpp @@ -509,7 +509,6 @@ void LLRenderTarget::bindTexture(U32 index, S32 channel, LLTexUnit::eTextureFilt      }      gGL.getTexUnit(channel)->setTextureFilteringOption(filter_options); -    gGL.getTexUnit(channel)->setTextureColorSpace(isSRGB ? LLTexUnit::TCS_SRGB : LLTexUnit::TCS_LINEAR);  }  void LLRenderTarget::flush() | 
