Page 1 of 1

How to get distant textures displayed sharp

Posted: Wed Dec 08, 2010 4:31 pm
by KungFuLu
Hi guys,

I'd like, as the topic title says, that textures which are far away from the user get displayed sharp and not blurry.

I've uploaded a little program to show what I mean.
Just zoom in and out with the cursor keys and don't rotate, as I'd like to use the planes as a kind of 2d sprites.
You'll than see that the text gets blurry and the line is getting grey if you're pretty far away from the planes.

Here are to pictures, the upper is as it should be and the lower is the bad:

Image
Image

I've tried to enable and disable several material flags and texture creation flags, but it doesn't help. Also disabling mipmap creation doesn't help, because then it is to sharp and hard.

Hopefully somone knows how to improve the quality.

Thanks for reading,
-Lu

Posted: Wed Dec 08, 2010 8:43 pm
by slavik262
Have you played around with texture filtering (bilinear v. trilinear v. anisotropic)? Texture filtering is what actually maps the pixels in the texture to the ones that show up in the rendered image. By default Irrlicht uses bilinear filtering (the worst, but fastest).

Posted: Wed Dec 08, 2010 11:10 pm
by Acki
I guess it's because of the mipmaps...
try to disable mipmapping... ;)

Posted: Wed Dec 08, 2010 11:35 pm
by Lonesome Ducky
Actually, I believe this has to do with mipmapping bias. You need to change the distance at which the mipmaps are used. Something like

Code: Select all

material.TextureLayer[0].LODBias = 128
or something like that I believe.

Posted: Thu Dec 09, 2010 3:30 pm
by KungFuLu
Thank you all for the replies.

@slavik262:
I tried it all, but it didn't change anything. It could be because of this crappy intel graphics card of my laptop. So I'm trying it on my desktop and if there's a difference, I'll post again.

@Acki:
I tried this one to, but then the textures were to sharp in the distance and you couldn't read it.

@Lonesome Ducky:
This one did improve it a lot. I'm currently playing arround with the values but now it's much better. Thanks for this hint.