我正在使用spritebuilder学习一些动画,但它正在模糊(或抗锯齿,我不知道)我导入和使用的图像。
在左侧,您可以看到spritebuilder图像,右侧是图像查看器中的png。
有任何关于如何防止这种情况的想法吗?
我将_sprite.texture.antialiased更改为NO,但结果是一样的。 left texture.antialiased = NO,right texture.antialiased = YES(默认)
我使用的代码:
@implementation MainScene{
CCSprite* _sprite1;
CCSprite* _sprite2;
}
-(void)didLoadFromCCB{
_karel1.texture.antialiased=NO;
//NSLog(@"hi");
self.userInteractionEnabled=YES;
}
答案 0 :(得分:0)
您必须将纹理过滤模式设置为最近(点)过滤。在cocos2d中,此CCTexture属性错误地(或至少异常地)命名为antialiased。它默认为YES,因此将其设置为NO以对给定纹理启用最近/点过滤。
例如:
thePlayerSprite.texture.antialiased = NO;
这在SpriteBuilder中无法完成,您必须以编程方式执行此操作。 I created a feature request here因为像素艺术这是必要的。
以下是来自SpriteBuilder论坛的更深入的讨论,解释how to enable pixel art filtering。
答案 1 :(得分:0)
您可能希望设置'缩放。在SpriteBuilder中设置,每个图像或整个项目的默认值为1x。默认情况下,SpriteBuilder希望您以4倍(iPad视网膜)分辨率提供图像,并根据您正在查看的设备缩小图像。
看起来你正在做一个像素艺术游戏。该项目展示了如何设置内容的示例:https://github.com/cocojoe/Pixel-Art-SpriteBuilder