假设我有一个自然不是正方形的纹理(例如,具有 4:1 纵横比的东西的摄影纹理)。假设我想使用 PVRTC 压缩在 iOS 设备上显示这个纹理,这要求纹理是方形的。如果我将纹理按比例放大,使其在压缩过程中呈正方形,则当从远处查看纹理时,结果是非常模糊的图像。
我相信这是由 mipmapping 引起的。由于 mipmap 过滤器看到新的更大的拉伸维度,它使用它来选择低 mip 级别,这实际上是不正确的,因为这些像素只是被拉伸到那个大小。如果它看另一个维度,它会选择更高分辨率的 mip 级别。
通过以下观察(在某种程度上)证实了这一理论,即如果我将纹理保留为不必是方形的格式,则 mipmap 版本看起来很花哨。
有一个 LOD Bias 参数,但文档说这适用于两个维度。似乎需要的是一种偏向 LOD 的方法,但仅在一个维度上(也就是说,将其偏向于在放大的纹理维度上的更高分辨率)。
除了切碎几何体以允许使用原始纹理的方形子集(这是不可行的,给我们的生产管道),有没有人用过任何聪明的技巧来处理这个问题?