Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

28 Zeilen
686 B

  1. #version 330
  2. // Input vertex attributes
  3. in vec3 vertexPosition;
  4. in vec2 vertexTexCoord;
  5. in vec3 vertexNormal;
  6. // Input uniform values
  7. uniform mat4 mvpMatrix;
  8. // Output vertex attributes (to fragment shader)
  9. out vec2 fragTexCoord;
  10. out vec3 fragNormal;
  11. // NOTE: Add here your custom variables
  12. uniform mat4 modelMatrix;
  13. void main()
  14. {
  15. // Send vertex attributes to fragment shader
  16. fragTexCoord = vertexTexCoord;
  17. // Calculate view vector normal from model
  18. mat3 normalMatrix = transpose(inverse(mat3(modelMatrix)));
  19. fragNormal = normalize(normalMatrix*vertexNormal);
  20. // Calculate final vertex position
  21. gl_Position = mvpMatrix*vec4(vertexPosition, 1.0);
  22. }