您的位置:首页 > 移动开发 > Cocos引擎

Cocos2d-x中的屏幕适配模式

2014-09-06 21:42 316 查看
原文地址:http://www.cocoachina.com/cocos/20140408/8119.html

分辨率适配

为了能更好的适应各种分辨率大小和屏幕宽高比的移动终端设备,游戏的开始,我们还是先来看看分辨率的适配设置。

打开AppDelegate.cpp文件,在applicationDidFinishLaunching函数里面添加如下代码,以便我们的游戏,能够更好的适应不同的运行环境。
// 分辨率适配
glview->setDesignResolutionSize(320.0, 480.0, ResolutionPolicy::FIXED_WIDTH);
std::vector<std::string> searchPath;
searchPath.push_back("w640");
CCFileUtils::getInstance()->setSearchPaths(searchPath);
director->setContentScaleFactor(640.0 / 320.0);


设计分辨率是通过setDesignResolutionSize(width, height, resolutionPolicy)方法来设置的,第一,二个参数分别是设计分辨率的宽度和高度,第三个参数是你想要的模式。这里设置的分辨率大小是开发时为基准的屏幕分辨率大小。

模式有五种:

1)EXACT_FIT 整个游戏内容都会在屏幕内可见,并且不用提供比例系数。x,y会被拉伸,使内容铺满屏幕,所以可能会出现形变,所有的应用程序看起来可能会是拉伸或者压缩的。

2)NO_BORDER 一个方向铺满屏幕,另外一个方向超出屏幕,不会变形,但是可能有一些裁剪。

3)SHOW_ALL 该模式会尽可能按原始宽高比放大游戏世界,同时使得游戏内容全部可见。内容不会形变,不过可能会出现两条黑边,即屏幕中会有留白。

4)IXED_WIDTH 该模式会横向放大游戏世界内的内容以适应屏幕的宽度,纵向按原始宽高比放大。

5)FIXED_HEIGHT 与上一中模式相反。

setSearchPaths()方法设置资源搜索路径,这里w640是搜索的文件夹名。

setContentScaleFactor()方法设置内容缩放因子,顾名思义,就是设置整个游戏内容放大或者缩小的比例系数。

更多分辨率适配细节,参考《Cocos2d-x 多分辨率适配完全解析》
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: