cocos2d-x屏幕自适应解决办法

本文介绍了在使用cocos2d-x开发跨平台应用时遇到的屏幕适配问题,包括三种解决方案:多套资源、缩放场景和自适应方法。通过全局函数调整Windows平台分辨率,并在Android平台上利用cocos2d-x内置方法实现自动适配,以解决不同设备分辨率差异导致的显示问题。虽然自适应方法可能导致非比例拉伸,但在某些情况下能有效减少工作量。
摘要由CSDN通过智能技术生成

最近在写一个项目,要求pc,ipad,andriod平台上都可以运行,所以选择用cocos2d-x来开发。我们的资源大小是1024*768的,在pc上和苹果上都是没有问题的,可是到了andriod上,问题就来了。andriod上有有各种各样的分辨率,那么程序在所有的分辨率上都可以正常运行显示呢?针对这个问题,我想了好几种方法:

(1)弄多套资源

因为这个项目里面有很多动画资源,如果要弄多套资源,工作量比较大,项目时间比较紧,不允许用这套方案

(2)cocos2d-x里面有一个方法

pDirector->setContentScaleFactor(0.5);

这个方法是把整个场景缩小到一半,界面上看上去没问题,但是里面要点击的精灵相应位置全不对了,如果用这套方法,代码要写好几套,要根据不同的分辨率来调整不同精灵的摆放位置和相应位置。尽管资源是一份,可是,代码要重新写过,要先机器的分辨率,然后再决定用那套精灵位置和相应位置的代码。可如何或如andriod下面机器分分辨率,这个还是个问题。再三思考后,打算做成多个apk文件,就做主流的分辨率,譬如说1024*768,1280*800,800*480等。本来已经打算这么弄了,可还是发现了更好的第三种办法。

(3)这种办法只需要一套资源,精灵位置也只有一套(不管是绝对位置还是相对位置),绝对是

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值