我正在尝试在我的视口(viewport)中的 50x50 方形区域中渲染一些 512x512 的图像,并且我使用线性纹理过滤。我的虚拟视口(viewport)大小是 550x800 像素。因此绘制纹理的正方形区域会根据屏幕分辨率进行缩放。
texture.setFilter(TextureFilter.Linear, TextureFilter.Linear);
在屏幕分辨率为 720x1280 的三星 Galaxy S3 上,纹理绘制流畅,令人满意。
但在屏幕分辨率为 480x800 的三星 Galaxy S2 纹理上仍然存在锯齿问题。我在网上做了一些搜索,找到了 AndroidApplicationConfiguration
numSamples
参数
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.numSamples = 5;
在libgdx documentation它说 “2 是一个很好的值”,但直到 numSamples
值为 5
我的问题是;什么样的副作用可能会导致 cfg.numSamples = 5
在性能、电池使用、CPU 过热等方面?
最佳答案
numSamples 是抗锯齿样本的数量。参见 http://en.wikipedia.org/wiki/Multisample_anti-aliasing获取更多信息。
您可能需要查看 mipmapping (TextureFilter.MipMap{Nearest/Linear}{Nearest/Linear}) 纹理过滤器。 TextureFilter.MipMapLinearNearest 或 TextureFilter.MipMapLinearLinear 可能会给您更好看的纹理,但您需要确保将纹理构造函数中的 useMipMaps 标志设置为“true”以生成 mipmap。
关于java - libgdx numSamples 有什么样的副作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18739497/