Cocoa SKSpriteNode结垢质量

Cocoa SKSpriteNode结垢质量,cocoa,sprite-kit,skspritenode,sktexture,Cocoa,Sprite Kit,Skspritenode,Sktexture,我正在使用SpriteKit开发一款小型OSX游戏。有些精灵使用从图像创建的纹理,可以从非常小的15-20点调整到非常大的250-300点 我发现当精灵很小时,应用于它的抗锯齿效果不好,边界是像素化的。SKTexture的过滤模式设置为“线性”。我试着打开mipmap的使用,但是它对图像没有帮助,因此,图像不是像素化的,而是非常模糊的 有已知的解决方案吗?有没有一种方法可以像在核心动画层中一样,对纹理应用三线过滤 谢谢 my SKScene子类中的代码: - (void)didChangeSiz

我正在使用SpriteKit开发一款小型OSX游戏。有些精灵使用从图像创建的纹理,可以从非常小的15-20点调整到非常大的250-300点

我发现当精灵很小时,应用于它的抗锯齿效果不好,边界是像素化的。SKTexture的过滤模式设置为“线性”。我试着打开mipmap的使用,但是它对图像没有帮助,因此,图像不是像素化的,而是非常模糊的

有已知的解决方案吗?有没有一种方法可以像在核心动画层中一样,对纹理应用三线过滤

谢谢

my SKScene子类中的代码:

- (void)didChangeSize:(CGSize)oldSize
{
    for (Tile *tile in self.tiles)
    {
        tile.size = /* some complex calculations */;
        tile.position = /* some more complex calculations */;
    }

    for (Unit *unit in self.units)
    {
        Tile *tile = [self.tiles objectAtIndex:unit.locationIndex];
        unit.size = tile.size;
        unit.position = tile.position;
    }
}

如何缩放图像?我只是通过为sprite的size属性指定一个新值来更改sprite的大小。好的,您使用此方法是因为必须提供精确的尺寸?如果不是的话,你可以试试.scale,对我来说,这不会破坏图像的。是的,我需要一个精确的尺寸…我也有同样的问题,最终为不同的尺寸制作了不同的纹理。mipmap真的很难看+它不适用于纹理图集。不过,您可以相当快地热交换纹理,甚至可以在主线程下轻松完成。