我目前正在用cocos2d构建一个简单的游戏。我希望有一个CCColorLayer,它具有透明的背景,但是有可见的孩子CCSprites

这有可能吗?

非常感谢,

不不不

最佳答案

当然是。您可以照常创建场景+图层,然后像其他任何节点一样将CCColorLayer添加到该图层。只要确保它在背景中即可:

// This adds a solid color background.
CCColorLayer* colorLayer = [CCColorLayer layerWithColor:ccc4(255, 0, 255, 255)];
[self addChild:colorLayer z:-1];


然后,您可以将常规的480x320尺寸的图像作为背景添加到色层上方的层中。如果背景图像是透明的,则所有透明部分将显示CCColorLayer的颜色。

注意:如果您不使用过渡(尤其是淡入淡出过渡,则GL颜色将干扰淡入色),您也可以使用OpenGL更改背景色。将此添加到场景或图层的init方法中:

glClearColor(1, 0, 1, 1);

09-26 10:39