MaxMipmapLevel values

Jun 27, 2011 at 6:21 PM


Recently I turned my attention to the usage of Mipmaps. But it seems to me that the values of "TextureSamplerState.MaxMipmapLevel" result in the opposite of what I expected.

Allow me to explain... when I set the TextureSamplerState.MaxMipmapLevel to 0 (zero), I can notice the mipmaps being used and the texture becomes clean and sharp once it fills the whole screen. But setting this value to (for example) 4 reduces the quality of the texture when in fullscreen.

It seems that this value is used to limit the mipmaps usage in the following manner:

MaxMipmapLevel = 0 : Use mipmaps with size from (1x1) up to (TexWidth x TexHeight)

MaxMipmapLevel = 1 : Use mipmaps with size from (1x1) up to (TexWidth/2 x TexHeight/2)

... and so on.

Is this correct? Is this the intended functionality? I would expect that this value would limit the lower resolution mipmaps... and not the higher resolution ones.

Thanks in advance