Carna  Version 3.3.2
solid.frag
1 #version 330
2 
3 /*
4  * Copyright (C) 2021 Leonid Kostrykin
5  *
6  */
7 
8 uniform vec4 color;
9 uniform mat4 normalsView;
10 
11 in vec4 normal;
12 
13 out vec4 gl_FragColor;
14 
15 
16 // ----------------------------------------------------------------------------------
17 // Fragment Procedure
18 // ----------------------------------------------------------------------------------
19 
20 void main()
21 {
22  vec3 lightDirection = vec3( 0, 0, -1 );
23  float diffuseLightAmount = max( 0, -dot( normalize( ( normalsView * normal ).xyz ), lightDirection ) );
24  gl_FragColor = vec4( color.rgb * diffuseLightAmount, color.a );
25 }