diff --git a/indra/llrender/llpostprocess.cpp b/indra/llrender/llpostprocess.cpp
--- a/indra/llrender/llpostprocess.cpp
+++ b/indra/llrender/llpostprocess.cpp
@@ -462,6 +462,7 @@
glVertex2f((GLfloat) width, (GLfloat) screenH - height);
glEnd();
#endif
+ llassert_always(false);
}
void LLPostProcess::viewOrthogonal(unsigned int width, unsigned int height)
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -1434,7 +1434,7 @@
Type
F32
Value
- 10.0
+ 30.0
CameraFNumber
@@ -8137,7 +8137,7 @@
Type
F32
Value
- 0.7
+ 0.5
RenderSpotLightsInNondeferred
diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl
--- a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl
@@ -75,32 +75,28 @@
void main()
{
- vec2 tc = vary_fragcoord.xy;
+ vec4 diff = texture2DRect(diffuseRect, vary_fragcoord.xy);
- vec4 diff = texture2DRect(diffuseRect, vary_fragcoord.xy);
-
- {
+ {
+ float sc = (diff.a*2.0-1.0)*max_cof;
float w = 1.0;
-
- float sc = (diff.a*2.0-1.0)*max_cof;
- float PI = 3.14159265358979323846264;
+ const float PI = 3.14159265358979323846264;
// sample quite uniformly spaced points within a circle, for a circular 'bokeh'
if (sc > 0.5)
{
while (sc > 0.5)
{
- int its = int(max(1.0,(sc*3.7)));
+ int its = int(max(1.0,(sc*PI)));
for (int i=0; i 0.5)
{
- int its = int(max(1.0,(sc*3.7)));
+ int its = int(max(1.0,(sc*PI)));
for (int i=0; i -1)
{
mDeferredLight.bindTexture(0, channel);
+ gGL.getTexUnit(channel)->setTextureFilteringOption(LLTexUnit::TFO_BILINEAR); // scale fairly pleasantly
}
shader->uniform1f(LLShaderMgr::DOF_MAX_COF, CameraMaxCoF);