我正在使用 cocos2d-x 开发游戏。为了将背景图像设置为适合我的屏幕,我使用了以下代码,但它会拉伸(stretch)图像,请提供建议。

bool AppDelegate::applicationDidFinishLaunching() {
    CCDirector *pDirector = CCDirector::sharedDirector();
    pDirector ->setOpenGLView(CCEGLView::sharedOpenGLView());
    CCEGLView::sharedOpenGLView() ->setDesignResolutionSize(480, 320, kResolutionExactFit);
    pDirector ->setDisplayStats(false);
    pDirector ->setAnimationInterval(1.0 / 60);
    CCScene *pScene = SplashScene::scene();
    pDirector ->runWithScene(pScene);
    return true;
}

最佳答案

我通常做的是缩放图像与屏幕尺寸的比例。下面是一些帮助代码。

CCSprite * sprite = CCSprite::createWithSpriteFrameName(spriteName);
sprite->setScaleX((winSize.width / sprite->getContentSize().width) * scaleXFactor);
sprite->setScaleY((winSize.height / sprite->getContentSize().height) * scaleYFactor);

scaleXFactor 和 scaleYFactor 是您想要的大小。如果你想让它全屏,你可以将它设置为 1。

关于cocos2d-x - 设置适合任何屏幕的背景图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23338016/

10-12 03:21