影子和CCSprite

时间:2010-07-16 19:06:40

标签: objective-c cocoa cocos2d-iphone

有办法为CCSprite做阴影吗?

1 个答案:

答案 0 :(得分:5)

嗯,你基本上有两个选择:

1)将阴影烘焙到精灵图像中,或者 2)将阴影作为单独的精灵进行管理。

前一种方法最简单。在Photoshop中打开您的精灵,将图层设置为有阴影,然后将其保存回来。只有当你拥有一致的光源并且没有以一种将阴影放在错误位置的方式旋转或翻转精灵时,这才有效。

否则,您可以管理两个精灵:普通精灵和阴影精灵。你可能不需要新的图形。相反,您可以使用相同的纹理,并使用以下方法将精灵的颜色设置为黑色:

 sprite.color = ccc3(0,0,0);

您也可以尝试:

 sprite.opacity = 128;
 sprite.scaleY = -1.0;

这不应该导致太大的性能损失,因为你可以从相同的纹理中获取它。如果将阴影的动画帧与原始精灵的动画帧匹配,则阴影甚至会匹配。