summaryrefslogtreecommitdiff
path: root/indra/newview/llvovolume.cpp
diff options
context:
space:
mode:
authorGeenz <geenz@geenzo.com>2019-03-29 08:11:56 -0700
committerGeenz <geenz@geenzo.com>2019-03-29 08:11:56 -0700
commit57d88a8a98ef8663b9064b12143beb4068e58f86 (patch)
tree8b37cf56aa5e6d0882caee2bcd79b22c90f5350b /indra/newview/llvovolume.cpp
parent3fa8b844c39311a2e4e319a8d4f7ab2c848ae140 (diff)
Gamma correction pass 2:
Make sure lights are in the correct color space. Bonus: cache the sRGB color in setLightColor on point and spot lights. Frees up a pow and some multiplies on the CPU every frame.
Diffstat (limited to 'indra/newview/llvovolume.cpp')
-rw-r--r--indra/newview/llvovolume.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index 4ddd9c4568..85bc1ba845 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -3239,6 +3239,19 @@ LLColor3 LLVOVolume::getLightColor() const
}
}
+LLColor3 LLVOVolume::getLightsRGBColor() const
+{
+ const LLLightParams *param_block = (const LLLightParams *)getParameterEntry(LLNetworkData::PARAMS_LIGHT);
+ if (param_block)
+ {
+ return LLColor3(param_block->getsRGBColor()) * param_block->getsRGBColor().mV[3];
+ }
+ else
+ {
+ return LLColor3(1, 1, 1);
+ }
+}
+
LLUUID LLVOVolume::getLightTextureID() const
{
if (getParameterEntryInUse(LLNetworkData::PARAMS_LIGHT_IMAGE))