我试图在视口的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 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。