FBOs are the new way for creating off-screen render targets. When you call driver->createRenderTargetTexture() to create a new render target, this patch creates it as a FBO if supported by the target system or else it uses the existing implementation.
Major advantage of using FBOs as render targets (besides a small speed increase) is that you 're no longer limited to the window size for render targets.
As you might already know, using the existing Irrlicht render targets, the maximum render target size can't exceed the size of the render window. So, for example, if your render window is 640x480, the render target can't be more than 256x256 (nearest power-of-two).
FBOs don't have such a limitation
Although I 'd like to create a new interface for render targets (e.g. IRenderTarget), it 's not currently necessary. It will be though, if we want to exploit the full power of FBOs (like multiple render targets in the same FBO etc.).
The bottom line is that there are no interface-breaking changes in this patch. Just apply it, compile and go on with your coding life
Download here (improved version with stencil buffer).
Enjoy,
Yiannis.