首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Libgdx - TexturePacker纹理滤镜组合

Libgdx - TexturePacker纹理滤镜组合
EN

Stack Overflow用户
提问于 2015-03-09 21:57:04
回答 1查看 556关注 0票数 0

道歉,因为这是一个共同的话题,还没有找到一个广泛同意的解决方案。

我们有一个1220x1080的游戏世界“网格”大小(基于我们的设计师的photoshop设计)。目前我们在Nexus4 (1280x768 @320DPI)和TF201 Transformer Prime平板电脑(1280x800 @149DPI)上进行测试。

在使用TexturePacker打包纹理时,我们对使用哪种滤镜组合感到有点困惑。我们已经阅读了以下页面:

http://www.badlogicgames.com/wordpress/?p=1403

。。当使用“最近的,最近的”时,我们的FPS为60,但是资源变得像素化了。现在我们使用"Mipmap,Mipmap“打包,我们的FPS降到了30,但纹理又平滑了。

这些过滤器是否有一个一致的组合,或者它们只是依赖于需求?有相当多的组合设置“最小过滤器”和“最大过滤器”在包装器中,所以不要想保持随机设置,直到一切顺利调整大小和FPS是高的,没有充分了解它在做什么。

非常感谢。J

EN

回答 1

Stack Overflow用户

发布于 2015-03-10 20:57:00

如果你支持多种屏幕尺寸(如果你的目标是Android),Mag滤镜应该始终是线性的。没有mip映射的磁盒过滤器这样的东西,在一些设备上甚至不能工作(你会得到纯黑色)。这是一种“陷阱”,因为一些设备会假设你指的是线性,并为你修复它,所以如果你不能在一个不能为你做这件事的设备上测试,你将不会意识到问题。最近的会看起来像素化时,拉伸较大,你只会想要使用它,如果你正在做复古低分辨率图形,或绘制像素完美的东西。

可以为最小滤镜选择以下选项之一,从最快(和最差)到最慢(和最好):

最近的

  • -这将看起来像素化的,我想不出任何情况下,这将是一个最小的filter.
  • MipMapNearestNearest的正确选择-不会比最近的外观或性能更好,并使用更多的内存。没有理由使用this.
  • MipMapNearestLinear -从两个最近的mip中获取最近的像素,然后在它们之间进行线性插值。这看起来仍然是像素化的。我不认为这是曾经使用过的either.
  • MipMapLinearNearest -获取最近的mip级别,并线性地确定像素颜色。我认为这是在移动设备上最常用的流畅图形。它的执行速度比下面的选项快得多,但在某些情况下,它看起来会有点模糊(当最近的mip对于screen).
  • MipMapLinearLinear上的内容来说有点小的时候-获得两个最近的mip级别,线性确定每个级别上的像素颜色,然后在两个级别之间线性混合。如果你有一个从无到有缩小到完整大小的精灵,你可能无法检测出从最小到最大的任何质量差异。但这也很慢。在过去,我把它的使用限制在我的字体上。三年前,我还做过一个可以在新设备上以60fps运行的项目,我在所有设备上都使用了这个。我在那个应用程序中对透支非常小心,这样我就可以逃脱惩罚。

最后是线性过滤,看起来的性能比mip映射选项(对于最小过滤器)更差:

  • 线性-如果图像在屏幕上比其原始纹理略小,则该选项将看起来很平滑。这不会消耗mip映射所占用的33%的额外纹理内存,但如果纹理小于原始纹理的50%,性能将比mip映射更差,因为对于每个屏幕像素,它必须从原始纹理采样和混合超过四个像素。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28943779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档