每次我喝醉了浏览所以我看到一个未答复fwidth
问题。
这让我想知道它实际上是为了做什么而设计的。
阅读文档是:abs(dFdx(p)) + abs(dFdy(p))
所以它不是经典的 mip 选择是 max(dx,dy)
.
是否用于替代 mip 选择?但是我没有找到abs(dx) + abs(dy)
的案例。会更好。
必须有一些使用该功能的签名纸或通用算法我完全没有。而且它一定很受欢迎,因为它已成为 GLSL。
我唯一能想到的是我缺少的一些 2d 后过滤器。
但是什么?
我相信这里有人知道,一旦你看到它就很明显了。
所以:什么算法使用abs(dx) + abs(dy)
?
最佳答案
使用 2D 过滤建议,您实际上很在意。任何依赖于像素与其相邻像素之间变化率的某种度量的过滤器都可以从该函数中受益。
示例包括抗锯齿、边缘检测、各向异性过滤。我敢肯定还有更多的例子人们可以想到。
从您的问题和评论看来,您希望将此功能包含在 GLSL 中有一个令人兴奋的理由。我只想说这是一个有用的功能。也许对这个函数的实际内部结构有更深入了解的人可以提供更多关于幕后发生的事情的细节(即,是否比手写的 dFdx 和 dFdy 有任何性能改进)。
关于opengl - fwidth glsl 函数实际用于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6800544/