我在cocos2d中玩游戏,想知道如何给子画面一个图层深度,这意味着我如何保持子画面在其他物体之上?
最佳答案
您可以执行以下操作:
假设您的课程是CCScene的子类别
-(id) init
{
if( (self=[super init] )) {
CCLayer *foreground = [CCLayer node];
CCLayer *background = [CCLayer node];
CCSprite *sprite1 = [CCSprite spriteWithFile:@"sprite1.png"];
CCSprite *sprite2 = [CCSprite spriteWithFile:@"sprite2.png"];
CCSprite *sprite3 = [CCSprite spriteWithFile:@"sprite3.png"];
[sprite1 addChild:sprite2 z:-1]; //This z:-1 means that sprite 2 is behind sprite 1
[foreground addChild:sprite1];
[background addChild:sprite3];
[self addChild:background z:0]; // z:0 is default, you don't need to add it.
[self addChild:foreground z:1]; // z:1 is infront of z:0
}
return self;
}
您需要学习如何使用的位是add child的z:参数。如果添加不带z参数的子项,则该子项将放在顶部。
关于objective-c - 在其他人之上的cocos2d中绘制 Sprite ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7241248/