diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2024-06-10 17:06:06 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2024-06-10 19:25:02 +0300 |
commit | 0dcc912cecdfb365c1f4246545ece40ccb7bc18e (patch) | |
tree | ccf664c765d1adbbf4985069321df65c85ca36e2 /indra/newview/lldrawpoolsimple.cpp | |
parent | bd8438f7083643ae5812b14e35e69e69ef1616c6 (diff) | |
parent | d317454c82e016a02c8a708a0118f3ff29aa8e82 (diff) |
Merge main into inventory_favorites
# Conflicts:
# indra/llui/llfolderviewmodel.h
# indra/newview/llpanelwearing.cpp
# indra/newview/llwearableitemslist.cpp
Diffstat (limited to 'indra/newview/lldrawpoolsimple.cpp')
-rw-r--r-- | indra/newview/lldrawpoolsimple.cpp | 74 |
1 files changed, 37 insertions, 37 deletions
diff --git a/indra/newview/lldrawpoolsimple.cpp b/indra/newview/lldrawpoolsimple.cpp index 696618f75b..2b0ae260dc 100644 --- a/indra/newview/lldrawpoolsimple.cpp +++ b/indra/newview/lldrawpoolsimple.cpp @@ -1,25 +1,25 @@ -/** +/** * @file lldrawpoolsimple.cpp * @brief LLDrawPoolSimple class implementation * * $LicenseInfo:firstyear=2002&license=viewerlgpl$ * Second Life Viewer Source Code * Copyright (C) 2010, Linden Research, Inc. - * + * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; * version 2.1 of the License only. - * + * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. - * + * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * + * * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA * $/LicenseInfo$ */ @@ -78,43 +78,43 @@ void LLDrawPoolGlow::renderPostDeferred(S32 pass) LL_PROFILE_ZONE_SCOPED_CATEGORY_DRAWPOOL; LLGLSLShader* shader = &gDeferredEmissiveProgram; - LLGLEnable blend(GL_BLEND); - gGL.flush(); - /// Get rid of z-fighting with non-glow pass. - LLGLEnable polyOffset(GL_POLYGON_OFFSET_FILL); - glPolygonOffset(-1.0f, -1.0f); - gGL.setSceneBlendType(LLRender::BT_ADD); - - LLGLDepthTest depth(GL_TRUE, GL_FALSE); - gGL.setColorMask(false, true); + LLGLEnable blend(GL_BLEND); + gGL.flush(); + /// Get rid of z-fighting with non-glow pass. + LLGLEnable polyOffset(GL_POLYGON_OFFSET_FILL); + glPolygonOffset(-1.0f, -1.0f); + gGL.setSceneBlendType(LLRender::BT_ADD); + + LLGLDepthTest depth(GL_TRUE, GL_FALSE); + gGL.setColorMask(false, true); //first pass -- static objects setup_glow_shader(shader); pushBatches(LLRenderPass::PASS_GLOW, true, true); - + // second pass -- rigged objects shader = shader->mRiggedVariant; setup_glow_shader(shader); pushRiggedBatches(LLRenderPass::PASS_GLOW_RIGGED, true, true); - + gGL.setColorMask(true, false); - gGL.setSceneBlendType(LLRender::BT_ALPHA); + gGL.setSceneBlendType(LLRender::BT_ALPHA); } LLDrawPoolSimple::LLDrawPoolSimple() : - LLRenderPass(POOL_SIMPLE) + LLRenderPass(POOL_SIMPLE) { } static LLTrace::BlockTimerStatHandle FTM_RENDER_ALPHA_MASK("Alpha Mask"); LLDrawPoolAlphaMask::LLDrawPoolAlphaMask() : - LLRenderPass(POOL_ALPHA_MASK) + LLRenderPass(POOL_ALPHA_MASK) { } LLDrawPoolFullbrightAlphaMask::LLDrawPoolFullbrightAlphaMask() : - LLRenderPass(POOL_FULLBRIGHT_ALPHA_MASK) + LLRenderPass(POOL_FULLBRIGHT_ALPHA_MASK) { } @@ -130,12 +130,12 @@ S32 LLDrawPoolSimple::getNumDeferredPasses() void LLDrawPoolSimple::renderDeferred(S32 pass) { LL_PROFILE_ZONE_SCOPED_CATEGORY_DRAWPOOL; //LL_RECORD_BLOCK_TIME(FTM_RENDER_SIMPLE_DEFERRED); - LLGLDisable blend(GL_BLEND); + LLGLDisable blend(GL_BLEND); - //render static + //render static setup_simple_shader(&gDeferredDiffuseProgram); - pushBatches(LLRenderPass::PASS_SIMPLE, true, true); - + pushBatches(LLRenderPass::PASS_SIMPLE, true, true); + //render rigged setup_simple_shader(gDeferredDiffuseProgram.mRiggedVariant); pushRiggedBatches(LLRenderPass::PASS_SIMPLE_RIGGED, true, true); @@ -168,19 +168,19 @@ LLDrawPoolGrass::LLDrawPoolGrass() : void LLDrawPoolGrass::renderDeferred(S32 pass) { LL_PROFILE_ZONE_SCOPED_CATEGORY_DRAWPOOL; - { - gDeferredNonIndexedDiffuseAlphaMaskProgram.bind(); - gDeferredNonIndexedDiffuseAlphaMaskProgram.setMinimumAlpha(0.5f); + { + gDeferredNonIndexedDiffuseAlphaMaskProgram.bind(); + gDeferredNonIndexedDiffuseAlphaMaskProgram.setMinimumAlpha(0.5f); - //render grass - LLRenderPass::pushBatches(LLRenderPass::PASS_GRASS, getVertexDataMask()); - } + //render grass + LLRenderPass::pushBatches(LLRenderPass::PASS_GRASS, getVertexDataMask()); + } } // Fullbright drawpool LLDrawPoolFullbright::LLDrawPoolFullbright() : - LLRenderPass(POOL_FULLBRIGHT) + LLRenderPass(POOL_FULLBRIGHT) { } @@ -198,12 +198,12 @@ void LLDrawPoolFullbright::renderPostDeferred(S32 pass) shader = &gDeferredFullbrightProgram; } - gGL.setSceneBlendType(LLRender::BT_ALPHA); - + gGL.setSceneBlendType(LLRender::BT_ALPHA); + // render static setup_fullbright_shader(shader); pushBatches(LLRenderPass::PASS_FULLBRIGHT, true, true); - + if (!LLPipeline::sRenderingHUDs) { // render rigged @@ -215,7 +215,7 @@ void LLDrawPoolFullbright::renderPostDeferred(S32 pass) void LLDrawPoolFullbrightAlphaMask::renderPostDeferred(S32 pass) { LL_PROFILE_ZONE_SCOPED_CATEGORY_DRAWPOOL; //LL_RECORD_BLOCK_TIME(FTM_RENDER_FULLBRIGHT); - + LLGLSLShader* shader = nullptr; if (LLPipeline::sRenderingHUDs) { @@ -227,11 +227,11 @@ void LLDrawPoolFullbrightAlphaMask::renderPostDeferred(S32 pass) } LLGLDisable blend(GL_BLEND); - + // render static setup_fullbright_shader(shader); pushMaskBatches(LLRenderPass::PASS_FULLBRIGHT_ALPHA_MASK, true, true); - + if (!LLPipeline::sRenderingHUDs) { // render rigged |