annotate sdr/vein.v.glsl @ 10:8fbdc6f84f64
fixed after the change in vmath
author |
John Tsiombikas <nuclear@member.fsf.org> |
date |
Fri, 31 May 2013 01:30:14 +0300 |
parents |
c6a6a64df6de |
children |
|
rev |
line source |
nuclear@3
|
1 attribute vec3 attr_tang;
|
nuclear@3
|
2
|
nuclear@6
|
3 varying vec3 vpos;
|
nuclear@3
|
4 varying vec3 ldir, vdir;
|
nuclear@3
|
5
|
nuclear@3
|
6 void main()
|
nuclear@3
|
7 {
|
nuclear@3
|
8 gl_Position = ftransform();
|
nuclear@3
|
9 vpos = (gl_ModelViewMatrix * gl_Vertex).xyz;
|
nuclear@3
|
10 vec3 norm = gl_NormalMatrix * gl_Normal;
|
nuclear@3
|
11 vec3 tang = gl_NormalMatrix * attr_tang;
|
nuclear@3
|
12
|
nuclear@3
|
13 vec3 n = normalize(norm);
|
nuclear@3
|
14 vec3 t = normalize(tang);
|
nuclear@3
|
15 vec3 b = cross(n, t);
|
nuclear@3
|
16
|
nuclear@3
|
17 mat3 tbn_mat = mat3(
|
nuclear@3
|
18 t.x, b.x, n.x,
|
nuclear@3
|
19 t.y, b.y, n.y,
|
nuclear@3
|
20 t.z, b.z, n.z);
|
nuclear@6
|
21 ldir = tbn_mat * vec3(0, 0, 1);
|
nuclear@3
|
22 vdir = tbn_mat * -vpos;
|
nuclear@3
|
23
|
nuclear@4
|
24 gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0;
|
nuclear@3
|
25 }
|