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

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

在屏幕分辨率为720x1280的三星Galaxy S3上平滑绘制,效果令人满意。

但是在屏幕分辨率为480x800的三星Galaxy S2上仍然存在锯齿问题。我在网上进行了搜索,发现numSamplesAndroidApplicationConfiguration参数
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.numSamples = 5;

libgdx documentation中,它说“2是一个好的值”,但是直到numSamples的值变成5时,我才能获得平滑的渲染

我的问题是;在性能,电池使用量,CPU过热等方面,什么样的副作用可能导致使用cfg.numSamples = 5

最佳答案

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

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

07-25 21:15