Skip to content

Commit

Permalink
Fix Fog in Lighting.frag
Browse files Browse the repository at this point in the history
This PR addresses this issue: #2363
  • Loading branch information
yaRnMcDonuts authored Feb 6, 2025
1 parent 1f31c14 commit b3b2e01
Showing 1 changed file with 4 additions and 29 deletions.
33 changes: 4 additions & 29 deletions jme3-core/src/main/resources/Common/MatDefs/Light/Lighting.frag
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,8 @@

// fog - jayfella
#ifdef USE_FOG
#import "Common/ShaderLib/MaterialFog.glsllib"
varying float fog_distance;
uniform vec4 m_FogColor;

#ifdef FOG_LINEAR
uniform vec2 m_LinearFog;
#endif

#ifdef FOG_EXP
uniform float m_ExpFog;
#endif

#ifdef FOG_EXPSQ
uniform float m_ExpSqFog;
#endif

#endif // end fog
#import "Common/ShaderLib/MaterialFog.glsllib"
#endif

varying vec2 texCoord;
#ifdef SEPARATE_TEXCOORD
Expand Down Expand Up @@ -231,21 +216,11 @@ void main(){
SpecularSum2.rgb * specularColor.rgb * vec3(light.y);
#endif


// add fog after the lighting because shadows will cause the fog to darken
// which just results in the geometry looking like it's changed color
#ifdef USE_FOG
#ifdef FOG_LINEAR
gl_FragColor = getFogLinear(gl_FragColor, m_FogColor, m_LinearFog.x, m_LinearFog.y, fog_distance);
#endif
#ifdef FOG_EXP
gl_FragColor = getFogExp(gl_FragColor, m_FogColor, m_ExpFog, fog_distance);
#endif
#ifdef FOG_EXPSQ
gl_FragColor = getFogExpSquare(gl_FragColor, m_FogColor, m_ExpSqFog, fog_distance);
#endif
#endif // end fog

gl_FragColor = MaterialFog_calculateFogColor(vec4(gl_FragColor));
#endif

gl_FragColor.a = alpha;
}

0 comments on commit b3b2e01

Please sign in to comment.