您的位置:首页 >> Cocos2d-x >> 和屌丝一起学cocos2dx-屏幕设置

和屌丝一起学cocos2dx-屏幕设置

[ 孤狼 | 2015-02-09 17:25:38 | Cocos2d-x | 2764°C | 0条评论 ]
声 明

本教程仅用于初学cocos2dx同学使用,内容由本人(孤狼)学习过程中笔记编写,本教程使用cocos2dx版本为2.1.4。本教程内容可以自由转载,但必须同时附带本声明,或注明出处。
gl.paea.cn版权所有。


       Hello,大家好,欢迎回到“和屌丝一起学coocs2dx”系列教程。上节我们说到了“粒子特效”。不知道大家玩的开心不,我们的基本课程已经接近尾声了。后面的东西,就看大家自己的努力了,我也要做自己的项目了,如果速度够的话,我会把我的项目发布的。嘿嘿。好了这节我们说下-屏幕设置。



【一】:设置啥


首先是换竖屏,然后还有个比较重要的,就是自适屏。


【二】:横竖换屏


1.打开main.cpp文件

找到eglView->setFrameSize(320, 480);,这里设置成你要的分辨率,用于开发。



2.生成android项目后修改AndroidManifest.xml文件

android:screenOrientation="landscape"横屏显示(默认)

android:screenOrientation="portrait"竖屏显示



【三】:自适屏


这里算是个难点,应为android的开源,机型千奇百怪,我们没有办法去适应所有的屏幕,选择的方案也很多。

1.针对每个分辨率做一套方案

2.cocos2dx2.0.4以后提供的缩放方案


这么看来第一种是绝对没有问题的,但是对一般的开发者来说,工程量太大,所以第二种相对更适合。


使用方法:

1.打开AppDelegate.cpp文件。

找到pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());

在这行的下面写(注意位置不能错,不然有问题)

CCEGLView::sharedOpenGLView()->setDesignResolutionSize(480, 800, kResolutionNoBorder);

这里我们使用的是setDesignResolutionSize函数,他的三个参数分别是(设计宽,设计高,缩放方式)。该函数会自动按设计宽高和缩放方式适应手机屏幕。


缩放方式:

kResolutionExactFit        //自动缩放宽高全部显示(会变形)

kResolutionNoBorder     //不留黑边全屏展示(不变形,但是长的那边会被裁减)

kResolutionShowAll        //全部展示不裁剪(可能会留黑边)



【三】:坐标


我们坐标需要按照屏幕的实际大小来,所以也要使用相对坐标。


//获取可视区域大小(用户手机分辨率)

CCDirector::sharedDirector()->getVisibleSize();

//获取可是区域左下角坐标

CCDirector::sharedDirector()->getVisibleOrigin();


这个是基本元素,之后,网上有很多说分9点来确定相对坐标系,也是靠他们俩来拼合的。




【四】:缩放


现在新版本缩放已经自动了。nothing to do。




本节DEMO下载


转载请注明出处:http://gl.paea.cn/n.php?n=33
 
如您看得高兴,欢迎随意投喂,让我们坚持创作!
赞赏一个鸡腿
还没有人留下遗迹
综合 · 搜索