rendering the framebuffer to a texture

how is this done when dealing with a resolution outside the bounds of powers of 2? i don’t have the greatest understanding of innerworkings of texture loading in the first place, but i can learn.

what i’d like to do is render the framebuffer, manipulate it, and then re-display it at the proper resolution without any loss of quality. i understand how to render to texture, but if there’s an easier/better way to manipulate the framebuffer without having to use textures at all, then i’d like to know. thanks.

seems like the answer is the accumulation buffer, which i should’ve remembered. i’ve never used it before, but i guess i would be able to do what i was planning. if anyone has any advice, or an answer to the first question, i would appreciate it.

accumulation buffer’s not going to work with my card, apparently. i get subzero frame rates. so if anyone can help…

What is it that you’re trying to do exactly? And what does the accumulation buffer have to do with it?

There’s no way to interact with the frame buffer directly, if that’s what you mean.

You’re probably going to need a combination of frame buffer objects (FBO) and pixel buffer objects (PBO) or glReadPixels to get efficient dynamic texturing and/or manipulation.

With optimization questions, the more specific you can be the better.

i just want to mess around. to experiment with motion blur, depth of field, and saturation effects. specifically, a bloom effect using blended, overlayed textures, if bloom is the right word here. i’ve read up on the accumulation buffer today, and was under the impression i could use it for each of these cases, especially along with convolution filters, but i don’t really know.

i did a test with the buffer tonight and ended up framerates practically in the negative, but my setup is very low end. i’m talking a 1 ghz pentium 3, a tnt2, 192mb ram, all running on the lovely windows ME.

It’s going to be tough on that system, but not impossible, at least not for everything. Check out the NVIDIA developer website. They have lots of demos, some of which work on the older cards. But most the new bloom, motion blur and post processing effects require the newer cards for reasonable frame rates. If you really want to have some fun, it’s time for a new box…

go back with your apple sucker

i’ve been messing around with a few things. rendering a 640x480 scene into a 1024x1024 texture causes too much of a performance hit, but the scene i’m using is not optimized and is generally very big and sloppy. rendering from a squashed viewport doesn’t have the needed clarity.

can i do anything with overlapped viewports? i’ve already started trying this, but i can’t get the desired effect with two overlapped 3d viewports. are there any tricks to this, or can i render into an ortho view and come out with something better?