Files
GameJam2023/GameLogic/Main.gdshader

22 lines
683 B
Plaintext

shader_type sky;
uniform vec3 color_top : source_color = vec3(0.91, 0.14, 1);
uniform vec3 color_horizon : source_color = vec3(1, 0.4, 0.42);
uniform vec3 color_bottom : source_color = vec3(1, 0.74, 0.39);
uniform float exponent_factor_top : hint_range(0, 100) = 1.0;
uniform float exponent_factor_bottom : hint_range(0, 100) = 1.0;
uniform float intensity_amp : hint_range(0, 1) = 1.0;
void sky() {
float p = EYEDIR.y;
float p1 = 1.0f - pow(min(1.0f, 1.0f - p), exponent_factor_top);
float p3 = 1.0f - pow(min(1.0f, 1.0f + p), exponent_factor_bottom);
float p2 = 1.0f - p1 - p3;
COLOR = (
color_top * p1 +
color_horizon * p2 +
color_bottom * p3
) * intensity_amp;
}