Swapnil
Swapnil

Reputation: 2512

Android setting background to fit screen size using cocos2d

I am using cocos2d to develop my android game.I am using following code to set background of screen.

        CGSize winSize = CCDirector.sharedDirector().displaySize();
    CCSprite player = CCSprite.sprite("map_image.png");
    player.setScaleX(winSize.getWidth()/player.getTexture().getWidth());
    player.setScaleY(winSize.getHeight()/player.getTexture().getHeight());
    player.setPosition(CGPoint.make(winSize.width/2, winSize.height/2));
    addChild(player);

I am scaling background so as to fit screen size.but it is stretching background.Please suggest any other alternative.How i should take images to fit different sizes of backgrounds.

Upvotes: 0

Views: 1363

Answers (2)

Karan Rana
Karan Rana

Reputation: 638

Use different images for different resolution, that give you best graphics result. You can check the screen size and according to that define the image for sprite for that resolution.

CCSprite player;
    if(size=...)
{
player = CCSprite.sprite("map_image_ldpi.png");
}else if(size=...)
{
player = CCSprite.sprite("map_image_mdpi.png");
}
.
.
.

Images handling in cocos2d android?

Upvotes: 1

Alex Timonin
Alex Timonin

Reputation: 1998

What I usually do is use pics that are bigger than any screen size (no streching used) and on some screens the edges are just not visible

Upvotes: 0

Related Questions