Cocos2d-x作为跨平台的游戏引擎,适配基本所有的手持设备,而开发者最头疼的多分辨率适配,在开发Cocos2d-x游戏的时候已经被游戏引擎完美解决。
教学视频
height="498" width="510" src="http://player.youku.com/embed/XODM5NjMxODE2" frameborder="0" allowfullscreen="">
课程笔记 -- 如何自动匹配分辨率
在发布之前,总会有一步最头疼的就是做分辨率适配,因为苹果家产品已经出了好多代,Android更多,所以想要满足所有型号的电子设备很难,在这里Cocos2d-x提供了方案
资源分辨率->设计分辨率。这里比较容易理解,假如我用4个200x200的图片,拼凑成一个400x400的界面,而这个400x400就是资源分辨率,而我希望它显示在一个800x600的中,这个800x600的界面是我假象出来的界面,其中需要使用Director::getInstance()->setContentScaleFactor()做一次转变,转变因子(setContentScaleFactor的参数)为400/800或者400/600,区别是:用高度比作为内容缩放因子,保证了背景资源的垂直方向在设计分辨率范围内的全部显示。用宽度比作为内容缩放因子,保证了背景资源的水平方向在设计分辨率范围内的全部显示。(其实这一步意义不大,因为我们做开发的时候会以某一个模拟器为准,进行开发,比如我是使用iphone6的模拟器进行开发的,所以直接是以iphone6的分辨率做开发,这个分辨率既作为资源分辨率,也作为设计分辨率)
设计分辨率->屏幕分辨率。这个比较重要,作用是告诉电子设备设计分辨率是多少,以及按照什么样的分辨率策略,相关函数是:Director::getInstance()->getOpenGLView()->setDesignResolutionSize(),传入参数为设计分辨率的宽、设计分辨率的高、分辨率策略。
感谢该系列视频教程作者王烁的来稿,Cocos引擎中文站的教程有奖征集活动正在进行中:http://www.cocoachina.com/bbs/read.php?tid-274890.html