summaryrefslogtreecommitdiff
path: root/indra/newview/llviewermenu.cpp
diff options
context:
space:
mode:
authorGlenn Glazer <coyot@lindenlab.com>2016-03-08 13:32:28 -0800
committerGlenn Glazer <coyot@lindenlab.com>2016-03-08 13:32:28 -0800
commitec683bb9cf6688633d8bc7ecbdf72f7cbc14d349 (patch)
tree59ada405958cd7764a96cfa35ccc89e83706b5af /indra/newview/llviewermenu.cpp
parentdaf8b882a12cf903d180f6303065d7b83f7a1958 (diff)
parent5a5c023e291990a463b1a91846ce82c70da8daab (diff)
pull from trunk
Diffstat (limited to 'indra/newview/llviewermenu.cpp')
-rwxr-xr-xindra/newview/llviewermenu.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index 38d62dee5e..de219edcff 100755
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -1245,9 +1245,24 @@ class LLAdvancedToggleWireframe : public view_listener_t
bool handleEvent(const LLSD& userdata)
{
gUseWireframe = !(gUseWireframe);
+
+ if (gUseWireframe)
+ {
+ gInitialDeferredModeForWireframe = LLPipeline::sRenderDeferred;
+ }
+
gWindowResized = TRUE;
LLPipeline::updateRenderDeferred();
gPipeline.resetVertexBuffers();
+
+ if (!gUseWireframe && !gInitialDeferredModeForWireframe && LLPipeline::sRenderDeferred != gInitialDeferredModeForWireframe && gPipeline.isInit())
+ {
+ LLPipeline::refreshCachedSettings();
+ gPipeline.releaseGLBuffers();
+ gPipeline.createGLBuffers();
+ LLViewerShaderMgr::instance()->setShaders();
+ }
+
return true;
}
};