summaryrefslogtreecommitdiff
path: root/indra/newview/app_settings/shaders/class1/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/class1/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/class1/deferred')
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/pbropaqueF.glsl5
1 files changed, 3 insertions, 2 deletions
diff --git a/indra/newview/app_settings/shaders/class1/deferred/pbropaqueF.glsl b/indra/newview/app_settings/shaders/class1/deferred/pbropaqueF.glsl
index 6e96186c18..5072f16988 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/pbropaqueF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/pbropaqueF.glsl
@@ -137,8 +137,9 @@ void main()
col.rgb = vary_position.xyz;
#endif
+ // See: C++: addDeferredAttachments(), GLSL: softenLightF
frag_data[0] = vec4(col, 0.0); // Diffuse
- frag_data[1] = vec4(spec.rgb, vertex_color.a); // Occlusion, Roughness, Metal
+ frag_data[1] = vec4(emissive, vertex_color.a); // PBR sRGB Emissive
frag_data[2] = vec4(encode_normal(tnorm), vertex_color.a, GBUFFER_FLAG_HAS_PBR); // normal, environment intensity, flags
- frag_data[3] = vec4(emissive,0); // Emissive
+ frag_data[3] = vec4(spec.rgb,0); // PBR linear packed Occlusion, Roughness, Metal.
}