58678f01195a3ff47fc4711ee45e7ed988080477
[carveJwlIkooP6JGAAIwe30JlM.git] / shaders / standard.fs
1 uniform sampler2D uTexGarbage;
2 uniform sampler2D uTexMain;
3 uniform vec3 uCamera;
4 uniform vec4 uPlane;
5
6 in vec4 aColour;
7 in vec2 aUv;
8 in vec3 aNorm;
9 in vec3 aCo;
10 in vec3 aWorldCo;
11
12 #include "common_world.glsl"
13 #include "motion_vectors_fs.glsl"
14
15 void main()
16 {
17 compute_motion_vectors();
18
19 vec3 vfrag = vec3(0.5,0.5,0.5);
20 vec4 vsamplemain = texture( uTexMain, aUv );
21 vec3 qnorm = normalize(aNorm);
22
23 vfrag = vsamplemain.rgb;
24
25 if( g_light_preview == 1 )
26 {
27 vfrag = vec3(0.5);
28 }
29
30 // Lighting
31 vec3 halfview = uCamera - aWorldCo;
32 float fdist = length( halfview );
33 halfview /= fdist;
34
35 vfrag = do_light_diffuse( vfrag, qnorm );
36 vfrag = do_light_spec( vfrag, qnorm, halfview, 0.1 );
37 vfrag = do_light_shadowing( vfrag );
38 vfrag = apply_fog( vfrag, fdist );
39
40 oColour = vec4(vfrag, 1.0);
41 }