diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-03-16 00:04:11 +0200 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-03-16 01:18:07 +0200 |
commit | d2a8a3bd53f011b7137717ece39f01b5242bb45a (patch) | |
tree | bff1ee6fef044c87f46fe984d99d3fcd45c7adc5 /indra | |
parent | b75f353903ca5a1ec330291859bfb6ea39b08b6a (diff) |
SL-18964 Smoke texture can fail to load
Debt from SL-18221.
Keep init together, after we got the cap; texture should finish loading before it's needed.
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/lldrawpoolalpha.cpp | 7 | ||||
-rw-r--r-- | indra/newview/llviewertexture.cpp | 7 | ||||
-rw-r--r-- | indra/newview/llviewertexturelist.cpp | 2 |
3 files changed, 3 insertions, 13 deletions
diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp index d4797321bb..f91069185a 100644 --- a/indra/newview/lldrawpoolalpha.cpp +++ b/indra/newview/lldrawpoolalpha.cpp @@ -281,12 +281,7 @@ void LLDrawPoolAlpha::renderDebugAlpha() gHighlightProgram.bind(); gGL.diffuseColor4f(1, 0, 0, 1); - // SL-18964 : The creating of this texture was moved here from LLViewerTextureManager::init() to make the texture transparent before adding to cache - if (!LLViewerFetchedTexture::sSmokeImagep) - { - LLViewerFetchedTexture::sSmokeImagep = LLViewerTextureManager::getFetchedTexture(IMG_SMOKE, FTT_DEFAULT, TRUE, LLGLTexture::BOOST_UI); - LLViewerFetchedTexture::sSmokeImagep->setNoDelete(); - } + LLViewerFetchedTexture::sSmokeImagep->addTextureStats(1024.f * 1024.f); gGL.getTexUnit(0)->bindFast(LLViewerFetchedTexture::sSmokeImagep); diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index 0d82aced23..df65fe8fb8 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -402,13 +402,6 @@ void LLViewerTextureManager::init() LLViewerFetchedTexture::sDefaultImagep->dontDiscard(); LLViewerFetchedTexture::sDefaultImagep->setCategory(LLGLTexture::OTHER); -#if 0 - // When called first time after clearing cache this call creates (and adds to cache) an opaque texture instead of transparent - // SL-18964 : The creating of this texture was moved to LLDrawPoolAlpha::renderDebugAlpha() - LLViewerFetchedTexture::sSmokeImagep = LLViewerTextureManager::getFetchedTexture(IMG_SMOKE, FTT_DEFAULT, TRUE, LLGLTexture::BOOST_UI); - LLViewerFetchedTexture::sSmokeImagep->setNoDelete(); -#endif - image_raw = new LLImageRaw(32,32,3); data = image_raw->getData(); diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp index 93ae1670c8..52e6a9a2df 100644 --- a/indra/newview/llviewertexturelist.cpp +++ b/indra/newview/llviewertexturelist.cpp @@ -228,6 +228,8 @@ void LLViewerTextureList::doPrefetchImages() LLViewerTextureManager::getFetchedTexture(IMG_SHOT); LLViewerTextureManager::getFetchedTexture(IMG_SMOKE_POOF); + LLViewerFetchedTexture::sSmokeImagep = LLViewerTextureManager::getFetchedTexture(IMG_SMOKE, FTT_DEFAULT, TRUE, LLGLTexture::BOOST_UI); + LLViewerFetchedTexture::sSmokeImagep->setNoDelete(); LLStandardBumpmap::addstandard(); |