在OpenGL ES纹理中查找最小值/最大值的最佳方法是什么

约翰

我有一个2D纹理,我想找到此纹理内最小值的位置(x,y),知道吗?

平台:OpenGL ES 2.0 Android。

注意:OpenGL ES2.0不支持mipmap渲染。

安东·科尔曼(Andon M.Coleman)

您可能会考虑利用mipmap LOD的层次结构性质,并将较大的点簇的最小值写入较低的LOD。您可以按照这种方式在Mip链中向上查找,以找到确切的最低值(和位置)。通过扩展,如果您使用两个通道的纹理,您也可以写入最大值,并将其也用于最大确定。您当然会增加内存需求,但是最小/最大位置的操作将非常快比较。

这项技术从字面上被称为最小/最大纹理。尽管它最常用于阴影环境中,但它有许多用途。O (n)无需进行耗时的搜索,您可以使用mipmap将纹理结构化为树状结构,并O (log n)在GPU上及时执行相同的操作您确实需要花费额外的处理来生成最小/最大LOD,但这是一次性的操作。

下面的链接提供的最小/最大纹理相当多的细节,我相信你可以找到更多的在谷歌...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章