summaryrefslogtreecommitdiff
path: root/indra/newview/app_settings/shaders/class3/deferred
diff options
context:
space:
mode:
authorPtolemy <ptolemy@lindenlab.com>2022-07-06 12:29:19 -0700
committerPtolemy <ptolemy@lindenlab.com>2022-07-06 12:29:19 -0700
commit6369180eae30f2a4dfa7dc4a10149c632d69c4c3 (patch)
treeaa92cdbaf3b6fa43dfffd8fda1b03b1e406cf403 /indra/newview/app_settings/shaders/class3/deferred
parentf49579ad25128b643f62115d9df249788d77d435 (diff)
SL-17682 PBR: Fix Occlusion Roughness Metal not being in linear space; removes need for redundant linear/sRGB conversions.
Diffstat (limited to 'indra/newview/app_settings/shaders/class3/deferred')
-rw-r--r--indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl7
1 files changed, 2 insertions, 5 deletions
diff --git a/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl
index fbcc69586a..2bf2183f29 100644
--- a/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl
+++ b/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl
@@ -223,13 +223,13 @@ void main()
// These values MUST be encoded with a linear transfer function.
vec3 colorDiffuse = vec3(0);
- vec3 colorEmissive = srgb_to_linear(texture2DRect(emissiveRect, tc).rgb);
+ vec3 colorEmissive = spec.rgb; // PBR sRGB Emissive. See: pbropaqueF.glsl
vec3 colorSpec = vec3(0);
// vec3 colorClearCoat = vec3(0);
// vec3 colorSheen = vec3(0);
// vec3 colorTransmission = vec3(0);
- vec3 packedORM = spec.rgb; // Packed: Occlusion Roughness Metal
+ vec3 packedORM = texture2DRect(emissiveRect, tc).rgb; // PBR linear packed Occlusion, Roughness, Metal. See: pbropaqueF.glsl
#if DEBUG_PBR_PACK_ORM0
packedORM = vec3(0,0,0);
#endif
@@ -323,21 +323,18 @@ void main()
#endif
#if DEBUG_PBR_METAL
color.rgb = vec3(metal);
- color.rgb = linear_to_srgb(color.rgb);
#endif
#if DEBUG_PBR_NORMAL_MAP
color.rgb = diffuse.rgb;
#endif
#if DEBUG_PBR_OCCLUSION
color.rgb = vec3(packedORM.r);
- color.rgb = linear_to_srgb(color.rgb);
#endif
#if DEBUG_PBR_ORM
color.rgb = packedORM;
#endif
#if DEBUG_PBR_ROUGH_PERCEPTUAL
color.rgb = vec3(perceptualRough);
- color.rgb = linear_to_srgb(color.rgb);
#endif
#if DEBUG_PBR_ROUGH_ALPHA
color.rgb = vec3(alphaRough);