I made a test model and DDS texture with numbered mipmaps, get it from here.
(excuse me for making it reflective, was stupid I know)
Anisotropic filtering or and the speed ups in the driver were disabled.
Screens:





Click for bigger images.
Moderator: Moderators
Wow, I always thought it was low mip but never thought it was this bad. This one here really blew my mind, the fact that it is so close and on the side it already want to go to mip three.
Code: Select all
glEnable(GL_AF);
glAFfunc(GL_COOKIES);
glTexEnv(GL_TEXTURE_FILTER_CONTROL,GL_TEXTURE_LOD_BIAS,-1.0)Kloot wrote:Mipmap thresholds are determined per fragment by the OGL
implementation, and as far as I know that behavior cannot be
changed programmatically. It's possible Spring sets the wrong
filtering type somewhere (ie., not GL_LINEAR_MIPMAP_LINEAR),
but nothing seems out of place with the texture-handler code
so this is pretty hard to pinpoint.
They'd need to be offset by a different amount for each mipmap level, which'd require figuring out the mipmap level in software, which, AFAIK, is impossible (or very hard) to do reliably.rattle wrote:Or the UV coordiantes need to be offset inside by a pixel on all sides for each mip level I guess...