1

当我使用 16x16 图像的 CCSprite 放大时,会出现很多模糊。

该图像是像素艺术,因此意味着像素化,但不会模糊。

我已经尝试setAntiAliasTexParameters在精灵的纹理上运行该方法,但它并没有改变任何东西。

这是代码:(mainSprite 是 CCSprite,slide1 是 CCTexture2D)

slide1 = [[CCTexture2D alloc] initWithImage:[UIImage imageNamed:@"slide1.png"]];
[slide1 setAntiAliasTexParameters];

[mainSprite setTexture:slide1];

谢谢,任何帮助表示赞赏!

4

3 回答 3

2

一般来说,最好使用更高分辨率的图像和 SCALE DOWN。例如,如果您要使用一个图像,当它与它一样大时,它将是 32x32。然后使用 32x32 图像,当您需要 16x16 分辨率时,将其缩小到该分辨率。

于 2012-07-01T20:45:49.457 回答
1

您的图像太小而无法放大……就这么简单。如果您不想模糊,请制作更大的图像并使用它。

建议您在做某事时使用 1:1 比例的图像(除非它是可缩放的图像,如单色..或 2 种颜色,或一条线,或类似的东西)。如果您有一个图标并且想要放大它..忘记它..只需制作一个更大的图标并在必要时缩小。

于 2012-07-01T20:37:32.690 回答
1

你应该改用这个:

[slide1 setAliasTexParameters];

这将告诉您的精灵不要抗锯齿,保留像素化外观

(使用 cocos2d v2.0 -- 不确定这是否适用于以前的版本)

于 2012-07-23T02:30:28.680 回答