mirror of https://github.com/qt/qt3d.git
30 lines
529 B
GLSL
30 lines
529 B
GLSL
#version 150
|
|
|
|
in vec3 normal;
|
|
in vec3 position;
|
|
in vec2 texCoord;
|
|
|
|
uniform vec3 finalColor;
|
|
|
|
out vec4 fragColor;
|
|
|
|
void main()
|
|
{
|
|
vec3 n = normalize(normal);
|
|
vec3 s = normalize(vec3(1.0, 0.0, 1.0) - position);
|
|
vec3 v = normalize(-position);
|
|
|
|
float diffuse = max(dot(s, n), 0.0);
|
|
|
|
if (diffuse > 0.95)
|
|
diffuse = 1.0;
|
|
else if (diffuse > 0.5)
|
|
diffuse = 0.5;
|
|
else if (diffuse > 0.25)
|
|
diffuse = 0.25;
|
|
else
|
|
diffuse = 0.1;
|
|
|
|
fragColor = vec4(diffuse * finalColor, 1.0);
|
|
}
|