Swtiching from offscreen to onscreen

It is likely this has a very simple answer but I am not seeing it yet.

I have a FPS kind of interface to move around a scene. After I press a certain key I generate a framebuffer and a new camera and render the scene onto the framebuffer. I then unbind the framebuffer and delete my camera.
I then ‘force’ to re-render the scene using my old camera but my scene has been affected by the camera I used to render into the framebuffer (I thought that rendering to a framebuffer did not affect the default rendering). I am obviously missing something but I cannot put my finger on it. Any ideas/suggestions?

Unless you’re using fixed-function OpenGL, there is no “camera”. So whatever “delete my camera” does, it’s not OpenGL’s business.

That is, not everything your camera object touched was undone by you deleting your camera.

Rendering to an FBO does not affect the contents of the default framebuffer. But switching framebuffers only switches state relevant to framebuffers. A framebuffer is not some kind of conceptual scene; it’s just a container of images and other properties directly related to the framebuffer itself. So anything about the nature of the scene, program uniforms, texture bindings, context state, etc, is unchanged by the fact that you changed framebuffers.

Thanks @Alfonse_Reinheart. Yes… as you point out some times it gets confusing where opengl begins and where it stops. At least for me.