cocos2d-x缩放方案详解

本文详细介绍了cocos2d-x的四种缩放方案:kResolutionExactFit、kResolutionNoBorder、kResolutionShowAll、kResolutionFixedHeight和kResolutionFixedWidth。针对不同场景的应用,如需要满屏显示、防止图像变形、处理黑边等问题,提供了相应的解决方案,并强调了在不同缩放模式下,代码设计和元素定位的注意事项。
摘要由CSDN通过智能技术生成

  cocos2d-x通过指定设计宽度以及缩放方案支持屏幕自适应,示例代码:

CCDirector* pDirector = CCDirector::sharedDirector();
CCEGLView* pEGLView = CCEGLView::sharedOpenGLView();
pDirector->setOpenGLView(pEGLView);
CCSize screenSize = pEGLView->getFrameSize(); //屏幕分辨率
CCSize designSize = CCSizeMake(480, 800); //设计分辨率为480x800
pEGLView->setDesignResolutionSize(designSize.width, designSize.height, kResolutionShowAll); //设置设计分辨率

  指定设计分辨率后就可以按设计分辨率的坐标直接设置精灵的位置,程序能自动按设计分辨率与实际分辨率的比值自动调整实际位置、精灵尺寸等,当物理屏幕的横宽比与设计分辨率的横宽比一致时可完美显示,不一致时不同的缩放方案具有不一样的效果:

缩放模式

含义

物理纵横比

四角坐标

origin

visibleSize

屏幕效果

图片效果

kResolutionExactFit

拉伸

横向较大

重合

0,0

480x800

满屏

纵向压扁

纵向较大

重合

0,0

480x800

满屏

横向压扁

kResolutionNoBor

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值