From b7a7bcdc22addf49867bd522f239f0bc87a31891 Mon Sep 17 00:00:00 2001
From: Euclid Linden <euclid@lindenlab.com>
Date: Fri, 12 Nov 2021 21:30:52 +0000
Subject: Revert "SL-14895, point light atten should move inversely light
 radius (pull request #496)"

---
 indra/newview/pipeline.cpp | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 9924b02a95..cd1b9c7c69 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -6387,19 +6387,21 @@ void LLPipeline::setupHWLights(LLDrawPool* pool)
                 continue;
             }
 
-            LLVector3 light_pos(light->getRenderPosition());
-            LLVector4 light_pos_gl(light_pos, 1.0f);
+			LLVector3 light_pos(light->getRenderPosition());
+			LLVector4 light_pos_gl(light_pos, 1.0f);
+	
+			F32 light_radius = llmax(light->getLightRadius(), 0.001f);
+            F32 size = light_radius * (sRenderDeferred ? 1.5f : 1.0f);
 
-            F32 adjusted_radius = light->getLightRadius() * (sRenderDeferred ? 1.5f : 1.0f);
-            if (adjusted_radius <= 0.001f)
+            if (size <= 0.001f)
             {
                 continue;
             }
 
-            F32 x = (3.f * (1.f + (light->getLightFalloff() * 2.0f)));  // why this magic?  probably trying to match a historic behavior.
-            F32 linatten = x / adjusted_radius;                         // % of brightness at radius
+			F32 x = (3.f * (1.f + (light->getLightFalloff() * 2.0f))); // why this magic?  probably trying to match a historic behavior.
+			F32 linatten = x / (light_radius); // % of brightness at radius
 
-            mHWLightColors[cur_light] = light_color;
+			mHWLightColors[cur_light] = light_color;
 			LLLightState* light_state = gGL.getLight(cur_light);
 			
 			light_state->setPosition(light_pos_gl);
@@ -6408,7 +6410,7 @@ void LLPipeline::setupHWLights(LLDrawPool* pool)
 			light_state->setConstantAttenuation(0.f);
 			if (sRenderDeferred)
 			{
-				light_state->setLinearAttenuation(linatten);
+				light_state->setLinearAttenuation(size);
 				light_state->setQuadraticAttenuation(light->getLightFalloff(DEFERRED_LIGHT_FALLOFF) + 1.f); // get falloff to match for forward deferred rendering lights
 			}
 			else
-- 
cgit v1.2.3