我有一个大的 32 位整数纹理 ( R32I
),我需要对其执行双线性过滤。我天真地以为我只需要在我的纹理上启用过滤,但似乎整个事情并不那么简单。OpenGL ES 3.0 规范在第129-131 页上有一个纹理格式列表,该R32I
格式未标记为纹理可过滤。所有整数格式似乎都是不可过滤的,大于 16 位的浮点格式也是如此。我可以同时使用整数或浮点格式,但 16 位对我的数据来说根本不够精确。
现在我当然可以在着色器中手动执行过滤,但我想知道是否有 GPU 可以实际过滤这些格式,以及我如何检测 GPU 是否能够做到这一点?
在着色器中手动执行双线性过滤是否存在严重的性能缺陷?或者仅仅是方便,那么我就没有理由尝试让自动过滤为我的纹理工作。