OpenGL如何决定使用哪个MIP级别?

3

这个问题相当自我解释。我的问题是关于使用纹理坐标,这些坐标可以来自任何地方(一个统一的变量,一个变化的变量,另一个纹理提取)。

例如,假设我在多级贴图(或各向异性过滤)纹理上进行了纹理提取,并且我使用了在顶点着色器中设置的变化的平方。我认为GLSL无法确定这样一个任意复杂函数的导数,那么它如何知道使用哪个mip等级呢?

谢谢。

1个回答

5

通常使用空间相干性。它在至少2x2像素的块上计算相同的值,并计算邻居之间的离散差异。这足以近似导数。


1
谢谢。我在我的Google搜索中添加了特殊的连贯性(之前没有想到),它找到了这个...http://developer.amd.com/media/gpu_assets/03_Clever_Shader_Tricks.pdf。证实了你所说的,并提供了一些关于如何处理与此相关的分支困难的建议。 - DaedalusFall

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接