I have seen this kind of functionality in DirectX apps only: when you resize the window, the rendering will also stretch accordingly, and it looks like it was actually a texture that was stretched.
How can i do this efficiently in OpenGL ? The purpose for this is to create a fullscreen application with native resolution, because its rather hard to choose lower resolution on LCD screens, and allow me to render with lower resolution to get higher FPS.
You will need to render to a texture or renderbuffer, then do a
glBlitFramebufferto the actual default framebuffer. Then swap buffers as normal.