繁体   English   中英

在场景之外添加了SpriteKit背景

[英]SpriteKit background added outside of scene

我试图将背景放置在整个场景背景上,但是由于某种原因,它会将其放置在屏幕之外。

这是我使用的:

SKTexture *backgroundTexture = [self.atlas textureNamed:@"back"];
SKSpriteNode *background = [SKSpriteNode spriteNodeWithTexture:backgroundTexture size:self.view.frame.size];
background.position = (CGPoint) {CGRectGetMidX(self.view.frame), CGRectGetMidY(self.view.frame)};
[self addChild:background];

它是这样写的:

在此处输入图片说明

您需要将背景图像添加到SKScene视图中,这样才能根据自身确定坐标。

SKSpriteNode *backgroundNode = [SKSpriteNode spriteNodeWithImageNamed:@"BackgroundImage"];
backgroundNode.position = CGPointMake(self.size.width/2, self.size.height/2);
backgroundNode.zPosition = 1;
[self addChild:backgroundNode];

实际上,问题在于,在新的Xcode 6.3.1中,当您创建新场景时,它会添加某种SKScene视图,该视图比iPhone正常屏幕更大,也许是iPhone 6+屏幕尺寸才是背景图片的原因。超出屏幕范围。 我只需要删除此视图文件,而不必从代码中重新加载它,然后就可以解决了。

不管怎样,上面的评论帮助我理解了这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM