@@ -49,21 +49,20 @@ in VS_OUT
4949
5050uniform vec3 u_Color;
5151
52- float MAG(float p_lp)
52+ float MAG(float lineWidth, float p_lp)
5353{
54- const float lineWidth = 1.0f;
5554 const vec2 coord = fs_in.TexCoords / p_lp;
5655 const vec2 grid = abs(fract(coord - 0.5) - 0.5) / fwidth(coord);
5756 const float line = min(grid.x, grid.y);
5857 const float lineResult = lineWidth - min(line, lineWidth);
5958 return lineResult;
6059}
6160
62- float Grid(float height, float a, float b, float c)
61+ float Grid(float lineWidth, float height, float a, float b, float c)
6362{
64- const float cl = MAG(a);
65- const float ml = MAG(b);
66- const float fl = MAG(c);
63+ const float cl = MAG(lineWidth, a);
64+ const float ml = MAG(lineWidth, b);
65+ const float fl = MAG(lineWidth, c);
6766 const float cmit = 10.0f;
6867 const float cmet = 40.0f;
6968 const float mfit = 80.0f;
@@ -78,9 +77,9 @@ float Grid(float height, float a, float b, float c)
7877void main()
7978{
8079 const float height = distance(ubo_ViewPos.y, fs_in.FragPos.y);
81- const float gridA = Grid(height, 1.0f, 4.0f, 8.0f);
82- const float gridB = Grid(height, 4.0f, 16.0f, 32.0f);
83- const float grid = gridA * 0.25f + gridB * 0.5f ;
80+ const float gridA = Grid(0.5f, height, 1.0f, 4.0f, 8.0f);
81+ const float gridB = Grid(0.7f, height, 4.0f, 16.0f, 32.0f);
82+ const float grid = gridA * 0.7f + gridB * 0.7f ;
8483
8584 // Calculate view direction vector (from camera to fragment)
8685 const vec3 viewDir = normalize(fs_in.FragPos - ubo_ViewPos);
@@ -90,7 +89,7 @@ void main()
9089 const float horizonFactor = abs(viewDir.y);
9190
9291 // Define how much we want to fade when looking at horizon
93- const float horizonMinFade = 0.01f ; // Minimum fade at horizon
92+ const float horizonMinFade = 0.02f ; // Minimum fade at horizon
9493 const float horizonFadeStart = 0.0f; // Start fading at this angle
9594 const float horizonFadeEnd = 1.0f; // Full grid strength at this angle
9695
0 commit comments