微信打飞机项目小结-屏幕适配

博客给出了一段代码用于实现游戏屏幕分辨率适配。先获取实际屏幕大小,以背景图片尺寸为参照,计算宽和高的比率,根据比率大小调整逻辑分辨率,通过条件判断调用 `setDesignResolutionSize` 方法设置不同的逻辑分辨率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//getFrameSize()获得实际屏幕的大小

     auto frameSize = glview->getFrameSize();

     //这填写的就是一般你作为背景图片的那种图片的大小,适配的原理就是放到和缩小,而以什么为参照,当然就是

     //以最大的那张图片为参照,什么图片最大,当然是背景图片了,以后美工做图的时候用的就是以下的这个尺寸

     auto winSize=CCSize(480,852);

 

     //将宽和高做一个比,通过这个比,来具体的调整逻辑分辨率的大小

     auto widthRate = frameSize.width/winSize.width;

     auto heightRate = frameSize.height/winSize.height;

 

     //如果是if中的语句,说明逻辑的高度有点大了,就把逻辑的高缩小到和宽度一样的比率

if (widthRate > heightRate)

    {

        //里边传入的前俩个参数就是逻辑分辨率的大小,也就是通过getWinSize()得到的大小

        glview->setDesignResolutionSize(winSize.width,

            winSize.height*heightRate/widthRate, ResolutionPolicy::NO_BORDER);

    }

else

    {

        glview->setDesignResolutionSize(winSize.width*widthRate/heightRate, winSize.height,ResolutionPolicy::NO_BORDER);

    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值