basic.vert 448 B

12345678910111213141516171819
  1. #version 330 core
  2. layout(location = 0) in vec3 a_position;
  3. layout(location = 1) in vec3 a_normal;
  4. layout(location = 2) in vec2 a_texCoord;
  5. uniform mat4 u_mvp;
  6. uniform mat4 u_model;
  7. out vec3 v_normal;
  8. out vec2 v_texCoord;
  9. out vec3 v_worldPos;
  10. void main() {
  11. v_normal = mat3(transpose(inverse(u_model))) * a_normal;
  12. v_texCoord = a_texCoord;
  13. v_worldPos = vec3(u_model * vec4(a_position, 1.0));
  14. gl_Position = u_mvp * vec4(a_position, 1.0);
  15. }