From 29d1d011a3d2502adb0935a6048daf3edeae620d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?No=C3=A9?= <noe.artru@polytechnique.org>
Date: Thu, 4 May 2023 14:07:56 +0200
Subject: [PATCH] Neige better

---
 .../shaders/mesh_multi_texture/mesh_multi_texture.frag.glsl | 2 +-
 projet-code/scenes_inf443/base/src/terrain.cpp              | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/projet-code/scenes_inf443/base/shaders/mesh_multi_texture/mesh_multi_texture.frag.glsl b/projet-code/scenes_inf443/base/shaders/mesh_multi_texture/mesh_multi_texture.frag.glsl
index df342a4..87a6a44 100644
--- a/projet-code/scenes_inf443/base/shaders/mesh_multi_texture/mesh_multi_texture.frag.glsl
+++ b/projet-code/scenes_inf443/base/shaders/mesh_multi_texture/mesh_multi_texture.frag.glsl
@@ -120,7 +120,7 @@ void main()
 	vec4 color_image_texture_2 = texture(image_texture_2, uv_image);
 
 	// Blend the crack texture with a white image along the y direction
-	float blending_parameter = fragment.position.z / 10;
+	float blending_parameter = fragment.position.z / 25;
 	color_image_texture_2 = (1 - blending_parameter) * vec4(1, 1, 1, 1) + blending_parameter * color_image_texture_2;
 
 	// Finally multiply the color of the two textures
diff --git a/projet-code/scenes_inf443/base/src/terrain.cpp b/projet-code/scenes_inf443/base/src/terrain.cpp
index d111b8f..13f56bf 100644
--- a/projet-code/scenes_inf443/base/src/terrain.cpp
+++ b/projet-code/scenes_inf443/base/src/terrain.cpp
@@ -43,7 +43,7 @@ mesh create_terrain_mesh(int N, float terrain_length)
     perlin_noise_parameters parameters;
     parameters.terrain_height = 6;
     parameters.octave = 6;
-    parameters.frequency_gain = 6;
+    parameters.frequency_gain = 17;
     parameters.persistency = 0.26;
 
     float perlin_noise;
@@ -70,8 +70,8 @@ mesh create_terrain_mesh(int N, float terrain_length)
 
             //blending parameter for color
             perlin_noise = parameters.terrain_height * noise_perlin(vec2(3 * x / terrain_length, 3 * y / terrain_length), parameters.octave, parameters.persistency, parameters.frequency_gain);
-            float b = std::min(2.0, exp((z+perlin_noise-20)/2)/exp(6));
-            terrain.color[kv + N * ku] = (1-b)*vec3(0,0.3f,0) + b * vec3(1, 1, 1);
+            float b = std::min(1.0, exp((z + perlin_noise - 20) / 2) / exp(6));
+            terrain.color[kv + N * ku] = std::max(0.0f,(1-b))*vec3(0,0.3f,0) + b * 1.5 * vec3(1, 1, 1);
             
         }
     }
-- 
GitLab