35 lines
844 B
GLSL
35 lines
844 B
GLSL
#version 440
|
|
|
|
layout(location=0) in vec3 coord3d;
|
|
layout(location=1) in vec3 v_normal;
|
|
layout(location=2) in vec3 v_color;
|
|
layout(location=3) in vec2 v_texmap;
|
|
layout(location=5) in vec3 v_tangent;
|
|
layout(location=6) in vec3 v_bittangent;
|
|
|
|
uniform mat4 mvp;
|
|
uniform mat3 NormalMatrix;
|
|
uniform mat4 ModelViewMatrix;
|
|
|
|
|
|
out vec3 fNormal;
|
|
out mat3x3 tangentMatrix;
|
|
out vec3 pos;
|
|
out vec2 texCoord;
|
|
|
|
void main(void)
|
|
{
|
|
vec3 fBittangent = normalize(NormalMatrix * v_bittangent);
|
|
vec3 fTangent = normalize(NormalMatrix * v_tangent);
|
|
fNormal = normalize(NormalMatrix * v_normal);
|
|
tangentMatrix = mat3(fTangent.x, fNormal.x, fBittangent.x,
|
|
fTangent.y, fNormal.y, fBittangent.y,
|
|
fTangent.z, fNormal.z, fBittangent.z);
|
|
|
|
pos = (ModelViewMatrix * vec4(coord3d, 1.0)).xyz;
|
|
|
|
texCoord = v_texmap;
|
|
|
|
gl_Position = mvp * vec4(coord3d, 1.0f);
|
|
}
|