我刚刚读完一些cocos2d的文档,而据我了解一个背景图片添加到你必须做一些像层:

Sprite * bg = [Sprite spriteWithFile:@"Background.png"];
[layer addChild:bg z:0];

Allthough至于我的测试去你可以直接精灵加入到这样的情景:

@implementation IntroScene
- (id) init {
self = [super init];
if (self != nil) {
    Sprite * bg = [Sprite spriteWithFile:@"Background.png"];
    [bg setPosition:ccp(240, 160)];
    [self addChild:bg z:0];
    [self addChild:[MenuLayer node] z:1];
}
return self;

}

是什么这2个选项之间的差,并且什么是更好的方式来设置的层的背景?任何帮助,将不胜感激。

有帮助吗?

解决方案

您不需要有一个层,但他们都得心应手。层看作分组精灵(在视觉上和组织)的一个方式。你可能想在游戏中的另一层编组为层的背景图像和所有的敌人。这使您可以更清晰地对待每一个组。例如可以去掉,而不是找到所有的敌人的,并除去它们的特定层。

如果有帮助,打在Photoshop层或图形编辑程序。层在同样的cocos2d工作。

有关一个简单的场景,加入的背景层或一个场景将没有太大的差别。但它并不需要很长时间的分层踢的利益之前。

其他提示

另外层控制图顺序(之上任何层间Ž排序)。

在geoSpark,例如,我有一个背景层,火花层,UI层等(简体)。但是,这让我确保我的UI的东西总是超越任何游戏的东西(火花层)和所有,这是背景之上。

如果您的游戏只做添加剂渲染,绘制顺序来说意义不大。 :)

- 大卫

现场一块黑板,层是一个网页...消息是页面上写道,但是,如果你愿意,你可以在黑板上写字。如果你想删除所有新的。

在cocos2d的,我们可以在任何节点上添加任何节点。但是它依赖于层级的级别。

您可以在场景添加图层。如果你想同一个属性或找你你可以添加那些CCScene一个CCScene添加(如在第二种情况下)的所有层。但是,如果你想有每一层在不同的功能添加到那些CCLayer。

CCLayer是指用于集合组节点/精灵的一些目的。例如,你可以添加一个层,其包括暂停游戏,或HUD层与一些滚动层(比喻在一些滚动平台游戏)沿着在屏幕上显示的SOM类总是后选项。

最后可以甚至CCNode上的CCScene,在CCSprite在另一层的层,并且甚至是CCNode。 但在cocos2d在图形上下文描绘的顺序不同。

希望你有差别。

祝你好运!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top