【发布时间】:2013-10-27 14:13:00
【问题描述】:
如何将SKTextureFilteringNearest 设置为我所有 SKTextures 的默认过滤模式?如果我没有将过滤设置为最近,我的精灵的所有边缘似乎都是模糊的。
【问题讨论】:
-
为什么不直接加载纹理然后设置texture.filterindMode呢?如果这真的太麻烦了,你可以制作一个应用过滤模式的 SKTexture 类别方法。替换原来的方法是一种残酷的、过分的解决方案。
-
不确定这是否会对您有所帮助,但这可以让您缩放并保持像素化效果。 stackoverflow.com/questions/19193005/…
-
@LearnCocos2D 为什么这么残酷而且太过分了?我想知道如果它在您自己的项目中,您为什么会反对这样的解决方案?如果你问我,这是一个简单而优雅的解决方案。 DRY(不要重复自己)将适用于此。
-
@Smick 这正是这个解决方案所做的,只是我不必为每个纹理都这样做。
-
这个解决方案的问题在于它改变了内置 Sprite Kit 函数的行为。好的,如果这对你有用,很好。但是您可能需要在不更改过滤模式的情况下创建纹理,因此您只是在转移问题。更好的解决方案就是为此使用单独的初始化程序,例如“textureWithImageNamed:filteringMode:”,您可以在其中直接指定模式。甚至是“textureNearestFilteredWithImageNamed:”——它使意图更清晰,并且保持原始不变并且仍然可用。
标签: ios sprite-kit