So I have a few, kind of strung out questions that I have been writing down as I was reading some stuff. Basically I’m dropping a simple graphics library that I’ve been using in lieu of QT + raw OpenGL, and while I have come to understand a lot of the ideas surrounding openGL, a little bit is still unclear.
- What’s the difference between a frame buffer object and a render object (in terms of drawing ability)? Doesn’t an FBO have several rendering objects?
- Does a window (say, a GLUT or QT window) have a single FBO? How many render objects does it have (by default)?
- If the above question is yes, can I create another render object to do off-screen rendering to, or must I create a whole new FBO?
- Can I blit an FBO/Render object to another?
- If I’m understanding this correct, an FBO has several render objects, one of which is drawn to the actual window (when it is created, it creates an FBO/render object). Can other render objects have other contexts, and therefore be multi-threaded? Am I totally off-base with this?
Also, another kind of irrelevant question:
- Is picking (selection mode) the preferred/efficient (if done properly) way to find which objects on the screen are being clicked/moused over?
- Does it have any marginal speed increase over other, CPU-bound hit testing methods? What about for purely 2D orthographic applications?
I couldn’t find any yays/nays about picking - only tutorials, so I thought I’d ask.
Thank you in advance for any information!