summaryrefslogtreecommitdiff
path: root/indra/newview/app_settings/shaders/class3/deferred
diff options
context:
space:
mode:
authorMcGroarty <git@mcgroarty.me>2026-07-26 18:53:19 -0700
committerMcGroarty <git@mcgroarty.me>2026-07-26 18:53:19 -0700
commitd1796fba2500a30bd3c71b0588efd18c1a8625bf (patch)
tree8afbd36410330fbb391cc9f6936d67d06215f048 /indra/newview/app_settings/shaders/class3/deferred
parentadc5f3cb7819a672c37a73f0c4cd850df536e9da (diff)
Fix rendering on Parallels VMs with graphics set to "low"
In LLRender::syncMatrices(), treat uniform location 0 as valid when uploading the inverse model-view, inverse projection, and identity matrices. Only location -1 indicates that a uniform is absent. (This is a zero-based index.) Fix Parallels GLSL compilation by: - renaming the local waterClip() wrapper to avoid an overload conflict - returning float literals (not ints) from a few functions declared to return float
Diffstat (limited to 'indra/newview/app_settings/shaders/class3/deferred')
-rw-r--r--indra/newview/app_settings/shaders/class3/deferred/materialF.glsl10
-rw-r--r--indra/newview/app_settings/shaders/class3/deferred/screenSpaceReflUtil.glsl2
2 files changed, 5 insertions, 7 deletions
diff --git a/indra/newview/app_settings/shaders/class3/deferred/materialF.glsl b/indra/newview/app_settings/shaders/class3/deferred/materialF.glsl
index 5708fc319f..65616e7835 100644
--- a/indra/newview/app_settings/shaders/class3/deferred/materialF.glsl
+++ b/indra/newview/app_settings/shaders/class3/deferred/materialF.glsl
@@ -262,7 +262,7 @@ void alphaMask(float alpha)
#endif
}
-void waterClip()
+void applyWaterClip()
{
#if (DIFFUSE_ALPHA_MODE == DIFFUSE_ALPHA_MODE_BLEND)
waterClip(vary_position.xyz);
@@ -284,17 +284,17 @@ float getShadow(vec3 pos, vec3 norm)
#if (DIFFUSE_ALPHA_MODE == DIFFUSE_ALPHA_MODE_BLEND)
return sampleDirectionalShadow(pos, norm, vary_texcoord0.xy);
#else
- return 1;
+ return 1.0;
#endif
#else
- return 1;
+ return 1.0;
#endif
}
void main()
{
mirrorClip(vary_position);
- waterClip();
+ applyWaterClip();
// diffcol == diffuse map combined with vertex color
vec4 diffcol = texture(diffuseMap, vary_texcoord0.xy);
@@ -441,5 +441,3 @@ void main()
#endif
}
-
-
diff --git a/indra/newview/app_settings/shaders/class3/deferred/screenSpaceReflUtil.glsl b/indra/newview/app_settings/shaders/class3/deferred/screenSpaceReflUtil.glsl
index e8901c7ba2..c9a19f4278 100644
--- a/indra/newview/app_settings/shaders/class3/deferred/screenSpaceReflUtil.glsl
+++ b/indra/newview/app_settings/shaders/class3/deferred/screenSpaceReflUtil.glsl
@@ -323,7 +323,7 @@ float tapScreenSpaceReflection(int totalSamples, vec2 tc, vec3 viewPos, vec3 n,
{
#ifdef TRANSPARENT_SURFACE
collectedColor = vec4(1, 0, 1, 1);
- return 0;
+ return 0.0;
#endif
collectedColor = vec4(0);
int hits = 0;