I’m finding a reproducible problem with OpenGL ES 2.0 on the iPad2 versus the iPad1 concerning the bias parameter for a texture lookup with texture2D in a GLSL fragment shader:
vec4 texture2D (sampler2D sampler, vec2 coord [, float bias] )
takes an optional bias parameter that allows control over the level of mipmaps from which a texel is taken, with negative values leading to a higher-resolution mip-map being used than otherwise, and positive values biasing towards a lower resolution mipmap. While this works as expected in the simulator and on the iPad1 and iPhone 4, iPad2 behaviour is very erratic, in my sample case with values between 0 and -3.9 seemingly not having any effect at all, and values less than -3.9 apparently leading to all texels being read from the original texture, i.e. mipmapping turned off.
Is this a bug or am I missing something?