added IBR lighting from irradiance maps
[demo] / gl_shaders / default.v.glsl
1 #version 450
2 //#extension GL_ARB_separate_shader_objects : enable
3
4 uniform mat4 mview;
5 uniform mat4 mmviewproj;
6 uniform mat4 mmod;
7
8 varying vec3 pos;
9 // varying vec3 normal;
10 // varying vec3 ldir;
11 varying vec2 tex_coord;
12 varying vec3 world_normal;
13
14 const vec3 lpos = vec3(-10.0, 100.0, 10.0);
15
16 /* attributes */
17 layout(location = 1) in vec3 attr_pos;
18 layout(location = 2) in vec3 attr_normal;
19 layout(location = 3) in vec2 attr_tex;
20
21 void main()
22 {
23         gl_Position = mmviewproj * vec4(attr_pos, 1.0);
24
25         pos = (mview * vec4(attr_pos, 1.0)).xyz;
26         // ldir = (mview * vec4(lpos, 1.0)).xyz;
27
28         // mat3 normal_matrix = mat3(mview);
29         // normal = normal_matrix * attr_normal;
30         tex_coord = attr_tex;
31
32         world_normal = (mmod * vec4(attr_normal, 1.0)).xyz;
33 }