Unity 2D艺术模糊

Unity 2D art is blurry

出于某种原因,我无法让这些瓦片地图像在 Unity 中创建的那样出来... 像素艺术从 Tiled 导入到 Unity。

Tiled 中的像素艺术:

导入 Unity 的相同像素艺术:

有人知道我该如何解决这个问题吗? 提前致谢!


根据要求,精灵导入设置:

考虑到您已经将过滤从 Bilinear 更改为 Point (no filter),问题可能是 Unity 默认压缩您的纹理。如果它是 POT 纹理(二次分辨率的幂),这很可能。


您可以在纹理导入设置的底部为各个平台覆盖此设置。 Select RGBA 32 bit 如果你需要 alpha 通道(透明度)或 RGB 24 bit 如果你不需要,让你的纹理解压缩。
并且不要忘记点击应用按钮! ;)

如果这没有帮助,您可以 post 一张导入设置的图片吗?
另外,你的图片是什么数据类型?

编辑:
添加导入设置屏幕截图后,在我看来问题出在 SpriteMode 设置上。
据我了解,所使用的图像是 tilemap 形式的 Spritesheet。因此 SpriteMode 应该设置为 Multiple.

然后您可以单击 Sprite Editor 按钮并使用 Slice 功能将 sheet 切割成单独的精灵(现在是独立的,从 Unity 5.6 开始)。
您可能想使用 Grid - By Cell Size 方法,这基本上就是 Tiled.

内部的处理方式

您还想调整 Pixels Per Unit 设置以匹配图块的分辨率(以获得像素完美的结果)。

毕竟张贴我的评论作为答案。

正如我所建议的,消除模糊的一种方法是将精灵的 "Filter Mode" 设置为 "Point (no filter)" 而不是 "Bilinear" 或 "Trilinear"

在这里你可以看到双线性和点过滤的区别。

如果这没有帮助,请尝试修改 Sprite 导入中的质量设置。 增加 "Max Size" 并可能禁用 "Compression" 或提高压缩质量。

在这里您可以看到不同压缩质量之间的差异,从 "Low" 到 "High" 到 "None"

您也可以尝试增加 "Max Size" 值以获得更高质量的精灵。它缩放精灵的尺寸以不超过指定值。如果你的 sprite sheet 已经小于 "Max Value",增加它不会有任何效果。

下一张图片显示了 51225612864 尺寸 423 x 467 的 Sprite 之间的差异

您可以看到,高于尺寸的大小不会有任何影响,而较小的值会缩小精灵,降低其视觉质量。

通常摆弄这些值应该有助于使您的精灵看起来清晰并且不再模糊。

编辑:
正如@NikaKasradze 指出的那样,您还可以尝试默认质量设置。转到 Edit > Project Settings > Quality

顶部的矩阵为您提供了编辑器本身以及所有构建目标平台的所有当前质量级别的选择。绿色勾号显示当前选择的默认质量。您还可以设置 "Texture Quality" 来定义项目中的整体纹理分辨率。您可以在 "Full"、"Half"、"Quarter" 和 "Eight Res" 之间进行选择。您应该选择 "Full Res" 作为您当前的默认设置。

确保您禁用了 Mip 贴图: http://prntscr.com/eup3hd

经过几个小时的修修补补,我唯一能想到的解决办法是打开 photoshop 并以其原始大小的 4000% 导出 tilemap。 如果我放大,仍然会有一些轻微的模糊,但至少没有我在问题中演示的那么糟糕。

我试过这里每个人的答案都无济于事,我得出的结论是它一定是 Tiled2Unity 的问题(尽管它以前从未这样做过)

如果我找到解决方案,我会更新这个post...

我遇到了精灵模糊的问题,我可以通过在图像编辑软件中更改精灵的分辨率来解决这个问题。分辨率是 576x352,我将其更改为 512x512 并修复了它。我认为最适合 Unity 的是图像是方形的,并且分辨率尽可能为 2 的幂(例如 512 = 2 ^ 9)。