PDA

View Full Version : Texture Quality



Gavin
06-11-2001, 05:26 AM
Anyone any idea why when I texture map a bmp it loses some quality, i know this as when using draw pixels with the same data the image is fine. Does gl do some sort of lossy compression?

gav

harsman
06-11-2001, 07:01 AM
Maybe you're using 16-bit textures?
Scaling it up so the bitmap gets fuzzy?
And, no there's no compression going on unless you enabled it yourself.

Gavin
06-11-2001, 07:21 AM
16 bit textures??

06-11-2001, 07:27 AM
Are you using gltexparameteri to set the minification and magnification filters right?

this is for high quality 2d Texture
Minification and Magnification.

glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTE R,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTE R,GL_LINEAR);

Bob
06-11-2001, 11:45 AM
>>16 bit textures??

When uploading the texture (with glTexImage*D), you must specify an internal texture format. If you say GL_RGB, you don't specify the exact amount of bits to represent the image. Your implementation might convert your 24/32-bit image into a 16-bit texture when uploading, because it finds it more suitable. To specifically tell OpenGL what format to use, try GL_RGB8/GL_RGBA8, which means 8 bits per channel.

fathom
06-11-2001, 11:56 AM
Also keep in mind that a texturemap will probably never reach an exact 1 for 1 pixel mapping to your screen, so you're probably getting a little bit of blur from the various filtering steps that happen with textures.

Gavin
06-13-2001, 04:12 AM
By looking at the pic degradation I would assume that it is dropping it to a 16 bit image. One thing I did notice was that on win 98 ther was degredation but on win 2000 there wasn't, just a point... thanks for help everyone..

gav

hoshi55
06-13-2001, 05:55 AM
as far as i´m concerned, textures must be of a 2^n x 2^m size for openGL to work. if they´re not, openGL resizes them to the next smaller size matching this requirement, so a 300x280 texture might become a 256x256 one, for example. this explains some loss of detail and quality. glDrawpixels does not have this limitation.
of course, color depth might also be the reason......