Advertisement
Guest User

Untitled

a guest
Jun 28th, 2016
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. out vec2 fragPos;
  2. out vec2 fragUV;
  3.  
  4. uniform vec2 pos;
  5. uniform vec2 size;
  6. uniform float rotation;
  7.  
  8. void main(){
  9. //gl_Position is OpenGL defined
  10. gl_Position.z = 0.0;
  11. gl_Position.w = 1.0;
  12. gl_Position.x = vertPos.x + pos.x*2 - 1;
  13. gl_Position.y = vertPos.y + pos.y*2 - 1;
  14.  
  15. mat4 rotationMat = mat4(cos(rotation), sin(rotation) * -1, 0, 0,
  16. sin(rotation), cos(rotation), 0, 0,
  17. 0, 0, 1, 0,
  18. 0, 0, 0, 1);
  19.  
  20.  
  21. gl_Position *= rotateZ;
  22.  
  23. //vec2 size
  24. if(size.x != 0 || size.y != 0){
  25. if(gl_VertexID != 0){
  26. switch(gl_VertexID){
  27. case 1: gl_Position.x += size.x; break;
  28. case 2: gl_Position.y += size.y; break;
  29. case 3: gl_Position.y += size.y; break;
  30. case 4: gl_Position.x += size.x; gl_Position.y += size.y; break;
  31. case 5: gl_Position.x += size.x; break;
  32. }
  33. }
  34. }
  35.  
  36.  
  37. fragPos = vertPos;
  38. fragUV = vec2(vertUV.x, 1.0 - vertUV.y);
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement