SpriteKit中的背景图像

时间:2014-06-14 02:55:50

标签: ios objective-c sprite-kit

我在SpriteKit中创建游戏,但在游戏中使用背景图像时遇到问题。我认为问题是图像必须是设备的精确分辨率,否则它不会出现。我的游戏是通用的,所以我需要它来处理所有设备和屏幕尺寸。现在的方式是背景在除了正常分辨率的iPad之外的每个设备上显示黑色。我相信这是因为这是图像的分辨率。所以我想添加一个iPhone分辨率的图像,但我不知道如何命名它以便它可以工作。我该怎么做?谢谢!

- (void)didMoveToView:(SKView *)view
{
    if (!self.contentCreated)
    {
        [self createSceneContents];
        self.contentCreated = YES;
    }
}

- (void)createSceneContents
{
    self.backgroundColor = [SKColor whiteColor];
    self.scaleMode = SKSceneScaleModeAspectFill;



    SKSpriteNode *bgImage = [SKSpriteNode spriteNodeWithImageNamed:@"bg"];
    [bgImage setAnchorPoint:CGPointZero];
    [self addChild:bgImage];
}

出于某种原因,它仅适用于非视网膜iPad,屏幕在其他所有屏幕上显示为黑色

1 个答案:

答案 0 :(得分:0)

基本上这就是你所需要的......

-(id)initWithSize:(CGSize)size {
    if (self = [super initWithSize:size]) {

        // make your background here i.e.
        _background = [SKSpriteNode spriteNodeWithImageNamed:@"bg"];
        [_background setAnchorPoint:CGPointZero];
        [self addChild:_background];

    }
    return self;
}