CoCos2d-x屏幕分辨率设置

CoCos2d-x屏幕分辨率设置

接下来是讲述CoCos2d-x对屏幕分辨率设置的问题:主要是 setFrameSize、setFrameZoomFactor 和 setDesignResolutionSize 函数的使用。

1 . setFrameSize这个函数是设置移动设备屏幕分辨率,一般与setDesignResolutionSize的设置一致。

2 . setFrameZoomFactor 调用这个函数是因为有的移动设备屏幕分辨率非常大,比如ipad3。太大的话在电脑上看不全了,所以用setFrameZoomFactor把程序窗口缩小。因此,这个函数只有在使用win32,mac,linux桌面时才会用到。

3.这个DesignResolutionSize表示设计方案,就是你的游戏完美支持的分辨率方案,一般根据图片资源的尺寸来定,自适配时会按照这个分辨率计算出缩放因子。

因此,这个值也应该是动态的(当然也可设定,比如设为640x960宽屏,这样在小屏的等比缩放也不会影响太大):

pEGLView->setDesignResolutionSize(designResolutionSize.width, designResolutionSize.height, kResolutionNoBorder);

第3个参数kResolutionNoBorder 是适配策略中的一种:

2.0版本提供了三种适配策略:

(1)kResolutionNoBorder:超出屏幕的部分会被裁剪,两侧没有黑边,铺满屏幕,按图片原始比例显示,图片不变形。

(2)kResolutionShowAll:整个游戏界面是可见的,会按原始比例进行缩放,图片不变形,但两侧可能会留有黑边,不铺满屏幕。

(3)kResolutionExactFit:整个游戏界面是可见的,图片可能会进行拉伸或者压缩处理,铺满屏幕,图片会变形。

可以根据自己的要求选择。

4.举例:设置移动应用的分辨率,以640x960分辨率为例

(1)在main.cpp中设置:

   CCEGLView* eglView = CCEGLView::sharedOpenGLView();
   eglView->setFrameSize(640, 960);
   eglView->setFrameZoomFactor(1.0f);

(2)在AppDelegate.cpp中设置:

CCEGLView::sharedOpenGLView()->setDesignResolutionSize(640, 960, kResolutionExactFit);

CoCos2d-x屏幕分辨率设置,布布扣,bubuko.com

时间: 2024-10-22 07:25:27

CoCos2d-x屏幕分辨率设置的相关文章

【android】根据屏幕分辨率设置底栏高度

<pre name="code" class="java"> public void setFooterHeightWithScreen() { //得到屏幕分辨率 int srcWidth =getWindowManager().getDefaultDisplay().getWidth(); // Log.i("f", srcWidth.toString()); //System.out.print(srcWidth); //得到按

Ubuntu屏幕分辨率设置

1.查看现有设备 xrandr -q 输出如下: Screen 0: minimum 1 x 1, current 800 x 600, maximum 8192 x 8192 Virtual1 connected primary 800x600+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 800x600 60.00*+ 60.32 2560x1600 59.99 1920x1440 60.00 1856x1392 60.00

Cocos2d适应屏幕分辨率

我使用的版本是cocos2d-2.0-x-2.0.4,cocos2dx-2.0版本对多分辨率适配提供了很好的支持,使用起来比1.0版本要简单些,1.0版本的适配可以参考这篇博文. 1. 做2.0版本的适配首先需要了解下面这些知识. (1)适配策略 2.0版本提供了三种适配策略: kResolutionNoBorder:超出屏幕的部分会被裁剪,两侧没有黑边,铺满屏幕,按图片原始比例显示,图片不变形. kResolutionShowAll:整个游戏界面是可见的,会按原始比例进行缩放,图片不变形,但两

Ubuntu12.04设置屏幕分辨率

Ubuntu屏幕分辨率设置 Table of Contents 1 概述 2 设置前 3 设置 4 参考 1 概述 我的Ubuntu12.04不知道被我怎么折腾了一番,屏幕的分辨率错乱了,没有办法找到全屏的分辨率.本文简单总结下 我设置分辨率的过程,方便以后查阅. 2 设置前 设置前我的分辨率如下: [email protected]:~$ xrandr Screen 0: minimum 64 x 64, current 1280 x 1024, maximum 16384 x 16384 V

JS获取屏幕分辨率以及当前对象大小等

1 <script type="text/javascript"> 2 function getInfo(){ 3 var s = ""; 4 s += " 网页可见区域宽:"+ document.body.clientWidth+"\n"; 5 s += " 网页可见区域高:"+ document.body.clientHeight+"\n"; 6 s += "

rem实现页面自适应屏幕分辨率

<html> <body> <div class="test"></div> </body> </html> 默认情况下1rem=16px;   font-size: 62.5%, 1rem=10px;   以下按照屏幕分辨率设置font-size的百分率, 可以保证div的宽高比在不同分辨率下保持一致,    页面字体大小使用rem同理 /*根据屏幕分辨率自适应大小*/ @media (max-width:192

VirtualBox中Ubuntu 14.04屏幕分辨率不能设置的问题

VirtualBox中Ubuntu 14.04屏幕分辨率不能设置的问题 ??在VirtualBOx虚拟机中Ubuntu 14.04设置屏幕分辨率,怎么点都没反应. 方法一:安装与你的Ubuntu-Guest版本最接近的VirtualBox Guest Additions版本,如下: sudo apt-get install virtualbox-guest-dkms 1 1 ??安装完所需要的包后,重启VirtualBox,便可以以合适的分辨率显示. ??如果运行的是MAC OSX,使用以下命令

virtualbox里的FreeBSD设置屏幕分辨率

因为对FreeBSD比较熟悉,所以在自己的工作机上用virtualbox虚拟了一个FreeBSD.屏幕分辨率是唯一的问题,今天得空解决了. 首先生成/etc/X11/xorg.conf. sudo X -configure 如果命令出错,可能是没有安装virtualbox-ose-additions. sudo pkg install virtualbox-ose-additions virtualbox-ose-kmod 遵照pkg install结尾的信息,将如下配置追加到/etc/rc.c

RedHat系统怎么设置或更改屏幕分辨率

1.打开Linux系统并进入到系统桌面 2.在上方工具栏中找到"System"按钮 3.根据下方提示找到如下的红色按钮 4.点击上图选项后会打开如下的分辨率设置界面 5.在上图中选择一个适合自己屏幕尺寸的比例并单击"Apply" 6.在弹出的提示对话框中选择下面选项即可完成设置. 文章节选自CODEGO.NET