summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2011-11-04 17:27:33 -0500
committerDave Parks <davep@lindenlab.com>2011-11-04 17:27:33 -0500
commit0a43fdd07e3b084ce230086c032ccef79f1df429 (patch)
treedd10d2c6a14c470d11fd9ec6ef0cfff9fc418b7b /indra/newview
parent367d6212ae9e18c398c25fe9e11646bfc801fd90 (diff)
SH-2652 Even faster DoF -- also fix for screen going black when DoF enabled but shadows are not.
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl4
-rw-r--r--indra/newview/pipeline.cpp4
2 files changed, 4 insertions, 4 deletions
diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl
index 629648ddc3..bf029d1db5 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl
@@ -73,7 +73,7 @@ void main()
{
while (sc > 0.5)
{
- int its = int(max(1.0,(sc*3.7)));
+ int its = int(max(1.0,(sc*3.7*0.5)));
for (int i=0; i<its; ++i)
{
float ang = sc+i*2*PI/its; // sc is added for rotary perturbance
@@ -82,7 +82,7 @@ void main()
// you could test sample coords against an interesting non-circular aperture shape here, if desired.
dofSample(diff, w, sc, vary_fragcoord.xy + vec2(samp_x,samp_y));
}
- sc -= 1.0;
+ sc -= 2.0;
}
}
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 1fff954b96..d524ddd62d 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -745,8 +745,8 @@ bool LLPipeline::allocateScreenBuffer(U32 resX, U32 resY, U32 samples)
mFXAABuffer.release();
}
- if (shadow_detail > 0 || ssao)
- { //only need mDeferredLight for shadows OR ssao
+ if (shadow_detail > 0 || ssao || RenderDepthOfField)
+ { //only need mDeferredLight for shadows OR ssao OR dof
if (!mDeferredLight.allocate(resX, resY, GL_RGBA, FALSE, FALSE, LLTexUnit::TT_RECT_TEXTURE, FALSE)) return false;
}
else