diff options
Diffstat (limited to 'indra/llrender/llcubemaparray.cpp')
| -rw-r--r-- | indra/llrender/llcubemaparray.cpp | 5 | 
1 files changed, 5 insertions, 0 deletions
diff --git a/indra/llrender/llcubemaparray.cpp b/indra/llrender/llcubemaparray.cpp index 998b57217d..e0a8782c33 100644 --- a/indra/llrender/llcubemaparray.cpp +++ b/indra/llrender/llcubemaparray.cpp @@ -114,6 +114,8 @@ LLCubeMapArray::LLCubeMapArray(LLCubeMapArray& lhs, U32 width, U32 count) : mTex      allocate(mWidth, lhs.mImage->getComponents(), count, lhs.mImage->getUseMipMaps(), lhs.mHDR);      // Copy each cubemap from the incoming array to the new array +    // The call to glTexSubImage3D causes an INVALID OPERATION OpenGL error. For now we comment this.. +    /*      U32 min_count = std::min(count, lhs.mCount);      for (U32 i = 0; i < min_count * 6; ++i)      { @@ -133,6 +135,7 @@ LLCubeMapArray::LLCubeMapArray(LLCubeMapArray& lhs, U32 width, U32 count) : mTex              glTexSubImage3D(GL_TEXTURE_CUBE_MAP_ARRAY, 0, 0, 0, i, mWidth, mWidth, 1, components, GL_UNSIGNED_BYTE, scaled_image->getData());          }      } +    */  }  LLCubeMapArray::~LLCubeMapArray() @@ -168,8 +171,10 @@ void LLCubeMapArray::allocate(U32 resolution, U32 components, U32 count, bool us      U32 mip_resolution = resolution;      while (mip_resolution >= 1)      { +#if GL_VERSION_4_0          glTexImage3D(GL_TEXTURE_CUBE_MAP_ARRAY, mip, format, mip_resolution, mip_resolution, count * 6, 0,              GL_RGBA, GL_UNSIGNED_BYTE, nullptr); +#endif          if (!use_mips)          {  | 
