Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

41 řádky
983 B

  1. #version 450 core
  2. #pragma include ./tail_render_shared.glsl
  3. #pragma include ../misc/camera.glsl
  4. in VertexData vertexData[];
  5. layout (points) in;
  6. layout (line_strip, max_vertices = 6) out;
  7. out FragmentData fragmentData;
  8. void main() {
  9. mat4 m = uCamera.projection * uCamera.view;
  10. VertexData d = vertexData[0];
  11. fragmentData.color = vec4(d.color, 1.0);
  12. gl_Position = m * vec4(d.tail[0], 0.0, 1.0);
  13. fragmentData.color = vec4(1.0, 0.0, 0.0, 1.0);
  14. EmitVertex();
  15. gl_Position = m * vec4(d.tail[1], 0.0, 1.0);
  16. fragmentData.color = vec4(1.0, 1.0, 0.0, 1.0);
  17. EmitVertex();
  18. gl_Position = m * vec4(d.tail[2], 0.0, 1.0);
  19. fragmentData.color = vec4(0.0, 1.0, 0.0, 1.0);
  20. EmitVertex();
  21. gl_Position = m * vec4(d.tail[3], 0.0, 1.0);
  22. fragmentData.color = vec4(0.0, 1.0, 1.0, 1.0);
  23. EmitVertex();
  24. gl_Position = m * vec4(d.tail[4], 0.0, 1.0);
  25. fragmentData.color = vec4(0.0, 0.0, 1.0, 1.0);
  26. EmitVertex();
  27. EndPrimitive();
  28. }