Render to NPO2 pbuffer faster?

I’ve been working with some render-to-texture code and have noticed that a non power of two pbuffer/texture seems to be faster than a standard power of 2 sized pbuffer/texture. Is there a reason (or better yet a whitepaper) describing this or do I have freaky code? :slight_smile:

Wow, sounds really strange!
Non power of two in the sense of ARB_npot or EXT_rect?
I would have expected the same performance but even faster… it has some reasons to be that way but I really don’t understand how this could be possible.

Yeah tell me about it. Non power of two in the sense of using GL_TEXTURE_RECTANGLE_NV instead of GL_TEXTURE_2D. Perhaps an nVidia optimisation? If you want to look at the code yourself I can make it available.

Originally posted by Catach:
Yeah tell me about it. Non power of two in the sense of using GL_TEXTURE_RECTANGLE_NV instead of GL_TEXTURE_2D. Perhaps an nVidia optimisation?
Then I could say that maybe the lack of interpolation makes less data transfer over the bus. I find this pretty unlikely to seriously affect performance however, since interpolation always been there, it should not take any significant time.

Originally posted by Catach:
If you want to look at the code yourself I can make it available.
Thank you for the offer but I won’t be able to look at it anyway. Maybe if someone other is interested.

By the way, are we speaking about real world framerates or insanely high ones?

Perhaps it has something to do with GL_TEXTURE_2D generating mipmaps?

Originally posted by hh10k:
Perhaps it has something to do with GL_TEXTURE_2D generating mipmaps?
Hmm. Not unless it’s on by default. If it is, how do you turn it off? With regards to the framerates the difference is more redily seeable at insanely high, low geometry tests but still apparent (although small) at more intensive benchmarks (79fps vs 84fps).

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.