首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SpriteKit SKCropNode掩盖了一切

SpriteKit SKCropNode掩盖了一切
EN

Stack Overflow用户
提问于 2015-06-08 05:45:21
回答 1查看 509关注 0票数 0

我试图用SKCropNode类隐藏一个节点。在SKCropNode继承类中,我使用自己的init方法执行此操作:

代码语言:javascript
复制
- (id)init {
    self = [super init];

    if (self) {
        self.maskNode = [[SKSpriteNode alloc] initWithColor:[SKColor blackColor] size:(CGSize){50,50}];
        SKSpriteNode *contentNode = [[SKSpriteNode alloc] initWithImageNamed:@"Spaceship"];
        [self addChild: contentNode];

        self.userInteractionEnabled = YES;
    }
    return self;
}

它如预期的那样运作:

现在,我想添加场景的背景和带有以下代码的裁剪宇宙飞船:

代码语言:javascript
复制
-(void)didMoveToView:(SKView *)view {
    /* Setup your scene here */

    //
    //background
    //
    SKSpriteNode * background = [SKSpriteNode spriteNodeWithImageNamed:@"background_game"];
    background.position = CGPointMake(CGRectGetMidX(view.frame), CGRectGetMidY(view.frame) - CGRectGetMinY(view.frame));

    [self addChild:background];

    TurretCropNode * cropNode = [[TurretCropNode alloc] init];
    cropNode.position = (CGPoint){view.frame.size.width/2,view.frame.size.height/2};
    [self addChild:cropNode];
}

我刚刚添加了几行,在开头添加了背景(裁剪的节点行保持不变)

我现在得到的是:

这是一种预期的行为吗?为什么飞船消失了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-08 06:05:50

我猜下面的图片是你指定的背景。您检查过节点zPosition了吗?

如果你想展示你的宇宙飞船在你的背景下,你将不得不调整zPosition比背景精灵更高。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30701966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档