aboutsummaryrefslogtreecommitdiff
path: root/src/main/resources/shaders/chunk.vert
diff options
context:
space:
mode:
authormakamys <makamys@outlook.com>2022-06-08 23:12:52 +0200
committermakamys <makamys@outlook.com>2022-06-08 23:37:36 +0200
commitaa4ef7da768ea2f2f3c4e025d28fe3edb2ae4ea9 (patch)
treea092af7056cfb6967873251fadd2ae8db8a1295d /src/main/resources/shaders/chunk.vert
parent39bbc34b7f9ce1cad8889c4e9c5a082b223574e3 (diff)
downloadNeodymium-aa4ef7da768ea2f2f3c4e025d28fe3edb2ae4ea9.tar.gz
Neodymium-aa4ef7da768ea2f2f3c4e025d28fe3edb2ae4ea9.tar.bz2
Neodymium-aa4ef7da768ea2f2f3c4e025d28fe3edb2ae4ea9.zip
Optimize fog
Now it gets me as much FPS as no fog! (370 fps; prior to this commit fog reduced it to 230)
Diffstat (limited to 'src/main/resources/shaders/chunk.vert')
-rw-r--r--src/main/resources/shaders/chunk.vert10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/main/resources/shaders/chunk.vert b/src/main/resources/shaders/chunk.vert
index 9901ef3..75ee0ab 100644
--- a/src/main/resources/shaders/chunk.vert
+++ b/src/main/resources/shaders/chunk.vert
@@ -20,6 +20,7 @@ out vec4 Viewport;
out mat4 ProjInv;
out vec4 FogColor;
out vec2 FogStartEnd;
+out float FogFactor;
void main()
{
@@ -30,5 +31,14 @@ void main()
Viewport = viewport;
ProjInv = projInv;
FogColor = fogColor;
+
+ float s = fogStartEnd.x;
+ float e = fogStartEnd.y;
+ vec4 eyePos = (modelView * (vec4(aPos - playerPos, 1.0) + vec4(0, 0.12, 0, 0)));
+
+ float fogFactor = clamp((e - length(eyePos)) / (e - s), 0, 1);
+
+ FogFactor = fogFactor;
+
FogStartEnd = fogStartEnd;
} \ No newline at end of file