Graphics OpenGL ES2.0 Mipmap级别选择、三线性过滤和精度

Graphics OpenGL ES2.0 Mipmap级别选择、三线性过滤和精度,graphics,opengl-es,filtering,standards-compliance,mipmaps,Graphics,Opengl Es,Filtering,Standards Compliance,Mipmaps,问题:如何计算三线性过滤的结果 我正在努力让一个视频驱动程序正常工作,但遇到了一个问题,即我没有通过mipmap级别的测试。将创建一个32x32纹理,并按如下所示填充mipmap级别 texsize_____mip lvl_____R____G_____B 32__________0________ff____00____00 16__________1________00____ff____00 8___________2________00____00____ff 4________

问题:如何计算三线性过滤的结果

我正在努力让一个视频驱动程序正常工作,但遇到了一个问题,即我没有通过mipmap级别的测试。将创建一个32x32纹理,并按如下所示填充mipmap级别

texsize_____mip lvl_____R____G_____B

32__________0________ff____00____00

16__________1________00____ff____00

8___________2________00____00____ff

4___________3________ff_____ff____00

2___________4________ff_____00____ff

1___________5________00_____ff____ff
现在,当我使用GL_NEAREST_MIPMAP_NEAREST/GL_LINEAR_MIPMAP_NEAREST/GL_LINEAR_MIPMAP_LINEAR/GL_LINEAR_MIPMAP_LINEAR时,我通过了我的测试。当我使用GL_NEAREST_MIPMAP_LINEAR/GL_LINEAR_LINEAR_MIPMAP_LINEAR时,从我收集到的数据都使用了三线性过滤,我的测试失败了,测试将我的结果与。当我绘制时,我使用的纹理大小为32/16/8/4/2/1

texsize_____mip lvl_____R____G_____B

32__________0________ff____00____00

16__________1________01____fe____00

8___________2________00____00____ff

4___________3________f9_____f9____06

2___________4________ff_____0c____f3

1___________5________00_____ff____ff
由于误差为+/-12,因此我在tex尺寸2处失败。似乎我也遗漏了一些东西,因为我预计所有级别都会失败,或者没有一个级别会失败,有人知道不同级别的过滤方式是否正常吗


我的问题是给出了上面的结果和输入,人们期望结果是什么?根据我的理解,如果我选择与给定级别相关的纹理大小,它应该在该级别的最低级别和高于该级别的最高级别之间插值。是否有一个权重也在起作用,而我却忽略了它?

当你说。。。使用纹理大小绘制…,这是否意味着您正在绘制该大小的纹理贴图四边形?还有,是你写的这个测试,还是其他司机通过的测试?只是想了解问题是否可能与测试有关,或者您是否确定这肯定是您的驱动程序的问题。是的,我正在绘制一个该大小的纹理贴图四边形。这是一个测试,其他司机通过,问题可能是在我们的司机。我曾尝试调整LOD_偏差,但似乎效果不好。LOD_偏差是驾驶员级别的答案。我调整了错误的LOD_偏差,芯片上有三个区域影响了LOD_偏差。我发现一个范围为-36/36,改变它与结果的增加或减少直接相关。我最终改变了它-5,它将所有的比较都纳入了规范。谢谢大家的帮助。