码迷,mamicode.com
首页 > 其他好文 > 详细

Cocos2dx屏幕匹配

时间:2015-01-23 00:48:18      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:cocos2dx屏幕适配

思路

1)首先是横屏改为竖屏,因为android项目的screenOrientation默认为横屏;

2)设置自适应屏。

【二】:横竖换屏

1Cocos2d-x2.x,打开main.cpp文件

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

技术分享

Cocos2d-x3.x,则打开AppDelegate.cpp文件,在applicationDidFinishLaunching()里设置分辨率:glView->setFrameSizewidth,height;

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();//可视区域左下角坐标

Cocos2dx屏幕匹配

标签:cocos2dx屏幕适配

原文地址:http://blog.csdn.net/yj_cs/article/details/43036229

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!