SpriteKit背景不适合iPhone 6 plus上的屏幕

时间:2015-08-16 10:12:31

标签: ios sprite-kit iphone-6-plus

我正在使用缩放模式填充来加载大小为640x1136的背景场景,如下所示:

SKView * skView = (SKView *)self.view;
skView.ignoresSiblingOrder = YES;

MainMenu *scene = [MainMenu sceneWithSize: self.view.bounds.size];
scene.scaleMode = SKSceneScaleModeAspectFill;

[skView presentScene:scene];

然后我在屏幕内加载背景:

    SKSpriteNode *menuBg = [SKSpriteNode spriteNodeWithImageNamed:@"mainBg"];
    menuBg.anchorPoint = CGPointZero;
    menuBg.position = CGPointZero;
    [self addChild:menuBg];

我希望backgorund能够填满屏幕,但不会调整大小以填满屏幕。我只持有@ 2x背景图片 - 我做错了什么?

1 个答案:

答案 0 :(得分:2)

您没有将节点定位在场景的中心,因此使用Aspect Fill scalemode无法正确缩放。

请改为尝试:

menuBg.anchorPoint = CGPointMake(0.5, 0.5);
menuBg.position = CGPointMake(self.size.width/2, self.size.height/2)

它会将锚点设置到节点的中心,并将节点定位在场景的中心。