All modern APIs (with the exception of some versions of OpenGL ES, I think) on modern graphics hardware (the last 10 or so generations from ATi / AMD / nVidia and the last pair from Intel) support NP2 texture just fine. They have been used, especially for subsequent processing, for quite some time.
However, not to say that they are as comfortable as power-of-2 textures. One of the main cases is memory packing; drivers can often pack textures into memory much better if they have two powers. If you look at the texture with mipmaps, the base and all mips can be packed in an area of 150% of the original width and 100% of the original height. It is also possible that certain sizes of textures will build memory pages in increments (the size of the texture string in bytes), which will provide an optimal situation with access to memory. NP2 makes this optimization more difficult, and therefore memory usage and addressing may be less efficient. Regardless of whether you notice, any effect is very dependent on drivers and applications.
Off-screen effects are perhaps the most common medium for NP2 textures, especially screen-sized textures. Almost every game on the market that performs any post-processing or delayed visualization has 1-15 outpost buffers, many of which are the same size as the screen (for some effects, half or quarter size is useful). They are usually well supported even with mipmaps.
Since NP2 textures are widely supported and an almost sure bet on desktop computers and consoles, their use should work fine. If you are worried about platforms or equipment where they might not be supported, lightweight backups include using the closest power-2 size (which may result in slightly lower quality, but they will work) or completely discarding the effect (with obvious marks).
ssube
source share