FBO performance options

I’m thinking about how to manage FBOs in my program, and I might as well don’t do any stupid performance-killing mistakes.

  • You shouldn’t change FBOs too often, so I should use one FBO for every texture dimensions I need.

  • Does binding the same FBO twice in a row impact performance? And same question regarding unbinding twice in a row.

  • If the above is a problem, then it might be worth it to cache the currently bound FBO, and only bind if needed?

That’s all I can think of right now.

You can use glDrawBuffers() to switch between textures/sets-of-textures to render to, from one FBO.
You can mix’n’match different formats and texture-sizes, in GL3.2+