summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2010-11-01 12:30:54 -0500
committerDave Parks <davep@lindenlab.com>2010-11-01 12:30:54 -0500
commite095665cca97247fd627339b8d299091b6dcf0cf (patch)
treebed0ce4610dd31be2eb97ddf12d9b61b87a4c550
parent434109c54e8b941d644fb0c63c2693681c17b2c9 (diff)
SH-281 Fix for snapshots showing interface all the time
-rw-r--r--indra/newview/llviewerdisplay.cpp19
-rw-r--r--indra/newview/llviewerwindow.cpp9
2 files changed, 22 insertions, 6 deletions
diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp
index dec9b8d48f..1d5caabebb 100644
--- a/indra/newview/llviewerdisplay.cpp
+++ b/indra/newview/llviewerdisplay.cpp
@@ -221,11 +221,24 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)
if (gResizeScreenTexture)
{ //skip render on frames where screen texture is resizing
gGL.flush();
- glClear(GL_COLOR_BUFFER_BIT);
- gViewerWindow->mWindow->swapBuffers();
+ if (!for_snapshot)
+ {
+ glClear(GL_COLOR_BUFFER_BIT);
+ gViewerWindow->mWindow->swapBuffers();
+ }
+
gResizeScreenTexture = FALSE;
gPipeline.resizeScreenTexture();
- return;
+
+ if (!for_snapshot)
+ {
+ return;
+ }
+ }
+
+ if (LLPipeline::sRenderDeferred)
+ { //hack to make sky show up in deferred snapshots
+ for_snapshot = FALSE;
}
if (LLPipeline::sRenderFrameTest)
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index 040c7523de..ea407c8f29 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -3884,7 +3884,9 @@ BOOL LLViewerWindow::rawSnapshot(LLImageRaw *raw, S32 image_width, S32 image_hei
setCursor(UI_CURSOR_WAIT);
// Hide all the UI widgets first and draw a frame
- BOOL prev_draw_ui = gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_UI);
+ BOOL prev_draw_ui = gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_UI) ? TRUE : FALSE;
+
+ show_ui = show_ui ? TRUE : FALSE;
if ( prev_draw_ui != show_ui)
{
@@ -4022,12 +4024,13 @@ BOOL LLViewerWindow::rawSnapshot(LLImageRaw *raw, S32 image_width, S32 image_hei
if (LLPipeline::sRenderDeferred)
{
- display(do_rebuild, scale_factor, subfield, FALSE);
+ display(do_rebuild, scale_factor, subfield, TRUE);
}
else
{
display(do_rebuild, scale_factor, subfield, TRUE);
- // Required for showing the GUI in snapshots? See DEV-16350 for details. JC
+ // Required for showing the GUI in snapshots and performing bloom composite overlay
+ // Call even if show_ui is FALSE
render_ui(scale_factor, subfield);
}
}