如何使用
为了直观地检查,我创建了一张6*6的贴图,并进行了mipmapping。当
请问是否有人可以用一个例子来解释它?
编辑: 我手动创建了mipmap级别,以便观察它选择了哪个级别。这是我的代码:
在这种情况下,我期望它会选择2×2的第二个mipmap级别,但它选择了4×4的第一个mipmap级别。当我设置min lod < 0.5时,它选择9×9的第0级。这发生的原因与max lod的值无关。
GL_TEXTURE_MIN_LOD
,GL_TEXTURE_MAX_LOD
和 LOD_BIAS
?为了直观地检查,我创建了一张6*6的贴图,并进行了mipmapping。当
MIN_LOD
值大于0.5时,无论 MAX_LOD
的值是多少,我都会得到一张3*3的贴图。如果我更改 LOD_BIAS
,它不会影响我的输出结果。我无法确定它究竟是如何工作的。请问是否有人可以用一个例子来解释它?
编辑: 我手动创建了mipmap级别,以便观察它选择了哪个级别。这是我的代码:
glTexImage2D(target, 0, GL_RGBA,9 ,9, 0, GL_RGBA, GL_BYTE,subpix);
glTexImage2D(target, 1, GL_RGBA,4 ,4, 0, GL_RGBA, GL_BYTE,&subpix[4]);
glTexImage2D(target, 2, GL_RGBA,2 ,2, 0, GL_RGBA, GL_BYTE,&subpix[10]);
glTexImage2D(target, 3, GL_RGBA,1 ,1, 0, GL_RGBA, GL_BYTE,&subpix[18]);
glSamplerParameterf(sampler,GL_TEXTURE_MIN_LOD,0.862);
glSamplerParameterf(sampler,GL_TEXTURE_MAX_LOD,0.99);
glSamplerParameterf(sampler,GL_TEXTURE_LOD_BIAS,0.0);
在这种情况下,我期望它会选择2×2的第二个mipmap级别,但它选择了4×4的第一个mipmap级别。当我设置min lod < 0.5时,它选择9×9的第0级。这发生的原因与max lod的值无关。