Skip to main content

FULLSCREEN_VERT

Constant FULLSCREEN_VERT 

Source
pub const FULLSCREEN_VERT: &str = "// fullscreen.vert \u{2014} single-triangle fullscreen pass\n//\n// Covers the entire clip-space viewport using 3 vertices, no VBO needed.\n// Call with glDrawArrays(GL_TRIANGLES, 0, 3) with any VAO bound.\n//\n//   gl_VertexID  uv        clip-space pos\n//   0            (0, 0)    (-1, -1)\n//   1            (2, 0)    ( 3, -1)\n//   2            (0, 2)    (-1,  3)\n//\n// The giant triangle is clipped to the viewport, so f_uv stays in [0,1]\n// across all visible fragments.\n\n#version 330 core\n\nout vec2 f_uv;\n\nvoid main() {\n    float u = float(gl_VertexID & 1) * 2.0;\n    float v = float(gl_VertexID >> 1) * 2.0;\n    f_uv        = vec2(u, v);\n    gl_Position = vec4(u * 2.0 - 1.0, v * 2.0 - 1.0, 0.0, 1.0);\n}\n";