4

我正在尝试在视口中的 50x50 正方形区域中渲染一些 512x512 图像,并使用线性纹理过滤。我的虚拟视口大小为 550x800 像素。因此,绘制纹理的正方形区域会根据屏幕分辨率进行缩放。

texture.setFilter(TextureFilter.Linear, TextureFilter.Linear);

在屏幕分辨率为 720x1280 的三星 Galaxy S3 上,纹理绘制流畅,令人满意。

但在屏幕分辨率为 480x800 的三星 Galaxy S2 上,纹理仍然存在锯齿问题。我在网上做了一些搜索,发现numSamples参数AndroidApplicationConfiguration

AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.numSamples = 5;

libgdx 文档中,它说“2 是一个很好的值”,但我无法获得平滑的渲染,直到numSamples值为5

我的问题是;cfg.numSamples = 5在性能、电池使用、cpu 过热等方面可能会产生什么样的副作用?

4

1 回答 1

0

numSamples 是抗锯齿样本的数量。有关详细信息,请参阅http://en.wikipedia.org/wiki/Multisample_anti-aliasing

您可能想查看 mipmapping (TextureFilter.MipMap{Nearest/Linear}{Nearest/Linear}) 纹理过滤器。TextureFilter.MipMapLinearNearest 或 TextureFilter.MipMapLinearLinear 可能会为您提供更好看的纹理,但您需要确保将 Texture 构造函数中的 useMipMaps 标志设置为“true”以生成 mipmap。

于 2014-03-06T20:32:29.693 回答