从头开始学cocos2dx笔记之六(TESTCPP之分辨率适配)

有了个大概的总览后,自然而然就有了个做个实际的小游戏出来的想法。但是这个想法付诸实施之前,还需要了解cocos2dx具体有那些功能。一本教材只是让我们了解入门的东西,更加强大的功能还是需要更多的了解。那怎么了解cocos2dx的功能呢,就如ogre有相应的功能演示示例,cocos2dx也有对应的功能演示示例,那就是TESTCPP。由于android环境无法启动模拟器运行,所以学习这个演示示例以及查看代码我决定通过VS环境来进行。

首先让我们从整个程序的入口AppDelegate.cpp开始.在DidFinishLaunching接口里面,我们看见首先程序读取了个config文件,然后实例化director,以及关联显示主窗口,接下来根据当前屏幕情况设置参数。我们注意到资源文件的放置是在工程根目录下resources文件夹对应的目录里面,但设置路径参数的时候并没有包括resources路径,回想一下,TestCpp运行在WIN32和ANDROID窗口大小是不一样的,所以这几段代码大概可以给我们如何设置高分辨率做一个提示。仔细看其中代码,其核心在于几行代码: 

pDirector->setContentScaleFactor(resourceSize.height/designSize.height);

pFileUtils->setSearchPaths(searchPaths);

CCEGLView::sharedOpenGLView()->setDesignResolutionSize(designSize.width, designSize.height, kResolutionNoBorder);

其中pfileutils是全局的资源路径,通过简单的判断,设置对应不同分辨率下读取的资源路径。不同屏幕大小searchPaths的值是不一样的。关于pDirector->setContentScaleFactor与CCEGLView::sharedOpenGLView()->setDesignResolutionSize,详细的介绍大家可以参考这里:http://cocos2d-x.org/wiki/Multi_resolution_support/diff/16

http://www.2cto.com/kf/201212/175527.html

我的大致理解是:TestCpp是在480X320的分辨率下设计的(designSize)的,但是现在要在一个960X640的设备上运行(SceneSize),为此,我准备了一套960X640的更加精细的资源(resourceSize),需要程序运行时针对性读取(setSearchPaths),除此之外,还要告诉引擎图片分辨率与设计分辨率的比率(setContentScaleFactor),以及我设计游戏的分辨率是什么(setDesignResolutionSize)。

 

关于分辨率适配就到这里。接下来的代码我们可以看到创建了一个CCScene,一个TestController的CCLayer,然后让director加载。因此,这个TestController应该就是程序运行开始我们看见的那个菜单界面。

再接下来就是程序后台与恢复的2个接口,内容很简单,就是暂停与恢复。

 

接下来将对TestController这个特殊的LAYER做一番了解。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值