When
one thinks of 3D rendering, it is common to think of 3D graphics rendered to
the screen.
When
creating a rendering context, a default framebuffer is constructed, and
attached to the current window.
Rendering is performed in this framebuffer.
However,
in some cases we may be interested in rendering to memory (offscreen)
instead.
Offscreen
rendering can be useful for numerous effects, like
- Mirrors, CCTV screens
- Image processing (edge detection, blur)
- Bloom
- Shadows
- Deferred rendering
- Dynamic cube mapping
- (others)