Should textures be power of two and square?

Some game engines require that textures be sized in powers of two and square. Some features of Blender require this, I think (e.g. video textures, 3D texture paint). Is this also a good practice for BGE in general–or should one size the textures for maximum efficiency?

Not 100% sure, though in terms of bytes it makes a lot more sense to work that way even if just for UV maps. No wasted space. General calculations are a lot easier if you work in multiples of bytes and eliminate floating points.

Give some specifics and someone who really knows might say for certain.

I’ve heard people saying that textures in powers of 2 can be resized with using less CPU then those that aren’t. However they don’t need to be square, say 128x256 should be fine.

It will speed up loading/start up. If textures aren’t in power of 2 then they will be resized, which take a little time.

If your textures are not a power of 2, it will look stretched or warped when blender resizes the texture for mipmapping.

This might explain it better: http://en.wikipedia.org/wiki/Mipmap

Even if your texture is in odd dimensions, its best to put it in a transparent background image that is a power of 2.

I cant find any good examples of the mipmap stretching right now but if I come across one I’ll post it here.

Great question btw…