Advertisement
Guest User

Untitled

a guest
Oct 26th, 2017
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1.  
  2. VERTEX
  3.  
  4. #version 400
  5.  
  6. layout(location = 0) in vec3 position;
  7. layout(location = 2) in vec3 normal;
  8.  
  9. out vec3 pass_colour;
  10.  
  11. uniform mat4 transformationMatrix;
  12. uniform mat4 projectionMatrix;
  13. uniform mat4 viewMatrix;
  14.  
  15. uniform vec3 lightPosition;
  16. uniform vec3 lightColour;
  17.  
  18. void main(void){
  19.  
  20. vec4 worldPosition = transformationMatrix * vec4(position, 1.0);
  21. gl_Position = projectionMatrix * viewMatrix * worldPosition;
  22.  
  23. vec3 surfaceNormal = normalize(normal);
  24. vec3 lightVector = -normalize(lightPosition - worldPosition.xyz);
  25. float brightness = max(dot(lightVector, surfaceNormal), 0.2);
  26. vec3 diffuse = brightness * lightColour;
  27. vec3 lighting = (lightColour * 0.5) + (diffuse * 0.9);
  28.  
  29. vec3 colour = vec3(-0.6, 0.5, 0.5);
  30.  
  31. pass_colour = colour * lighting;
  32.  
  33. }
  34.  
  35. FRAGMENT
  36.  
  37. #version 400
  38.  
  39. in vec3 pass_colour;
  40.  
  41. out vec4 out_Colour;
  42.  
  43.  
  44. void main(void) {
  45. out_Colour = vec4(pass_colour, 1.0f);
  46.  
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement