If I load a texture from a file image into OpenGL and I create a plane placed vertically, if I set the top left vertex the texture coordinates (0, 0) then the texture at that point is sampled at the top left of the image that you open in an application.
However when I render to a framebuffer, and I bind its colour attachment as the texture, the top left vertex with coordinates (0, 0) will be sample from the bottomleft, as would be seen if this framebuffer was displayed to the screen. In other words when sampling from a framebuffer texture the Y seems to be inverted.
Whether I've set the glClipControl to GL_UPPER_LEFT or GL_LOWER_LEFT this texture sampling behaviour is the same, ie., it considers bottom left of the sampled framebuffer texture as (0, 0). I've noticed this because I render my GUI to a framebuffer, then render to the default framebuffer, and whereas normal image textures loaded from files sample (0, 0) at the top left of the image, it seems opposite when sampling from a framebuffer texture:
Is this normal and can I make it so that sampling (0, 0) from a framebuffer texture is the topleft? glClipControl(GL_UPPER_LEFT) doesn't have any effect on this particular thing? I'm confused.