Добавлен снеговик, добавлены кординатные оси, рефактор рендеринга
This commit is contained in:
@@ -1,10 +1,24 @@
|
||||
#version 330 core
|
||||
|
||||
in vec4 a_color;
|
||||
in vec4 fragColor;
|
||||
in vec3 fragPos;
|
||||
in vec3 fragNormal;
|
||||
|
||||
out vec4 f_color;
|
||||
|
||||
float map(float value, float min1, float max1, float min2, float max2) {
|
||||
return min2 + (value - min1) * (max2 - min2) / (max1 - min1);
|
||||
}
|
||||
|
||||
void main(){
|
||||
f_color = a_color;
|
||||
vec3 lightColor = vec3(1, 1, 1);
|
||||
vec3 lightDir = vec3(1, 1, 1);
|
||||
|
||||
// диффузное освещение
|
||||
// dot получается [-1 ... 1]
|
||||
float diff = dot(normalize(fragNormal), normalize(lightDir));
|
||||
// теперь делаем диапазон [0.2 ... 1]
|
||||
diff = map(diff, -1, 1, 0.2, 1);
|
||||
|
||||
f_color = vec4(diff * lightColor * fragColor.rgb, fragColor.a);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user