cocos2d-x学习笔记3:更改HelloWorld,建立自己的小项目

前端之家收集整理的这篇文章主要介绍了cocos2d-x学习笔记3:更改HelloWorld,建立自己的小项目前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

上一次的笔记深入分析了HelloWorld,其实这个场景并不是我们自己建立的,是在新建工程的时候自动加入的场景。下面我们将这个场景改造成我们自己游戏的第一个启动画面。 首先是更改HelloWorldScene这个类,我们把类名改成Start,当然,在项目中的所有的HelloWorld都改成Start,我们先来改HelloWorldScene.cpp,改成Strat.cpp,文件名改完后,在Start.cpp文件中Ctlr+F打开查找,再点击弹出窗口左侧的小箭头,打开替换:

X

在上面的搜索框中搜索HelloWorld,下面的替换框中输入Start,手动一个个或者全部一次性替换,建议手动一个个看着改,有点基础的这里都能搞定了。
然后再改HelloWorldScene.h文件文件名改成Start.h,文件内也是cpp文件一样的方法,不过这里不需要改动很多,就是在定义的地方改改,其实将原来的_HELLOWORLD_SCENE_H_改成_START_H_就行了。(这个很简单,我也不知道为什么我说了这么多~~)
名字改了,内容还没改,我们在Start.cpp中将原来显示的HelloWorld改掉:
CCLabelTTF* pLabel = CCLabelTTF::create('The Start Picture','Arial',24);接着我们在main.cpp中将窗口大小改为960*640的:
eglView->setFrameSize(960,640);就是这句,更改后窗口大小就变大了,但是我们用到的HelloWorld.png图片依旧是480*320的,也就是说这样运行的话会出现这样的情况:

图片并没有跟着窗口一起变大,虽然显示的字符不再是HelloWorld了,不过这样很难看啊。当然你可以找到960*640的图片来替换这张图,但是游戏中会有很多的资源,在不同的机型上运行又是要面对不同分辨率的设备,总不能全都找来一一对应吧,做美术的童鞋会跟你拼命的。所以要让图片随着窗口大小改变。
进入AppDelegate.cpp,在 AppDelegate::applicationDidFinishLaunching()中添加一句就解决了,上图:
CCEGLView::sharedOpenGLView()->setDesignResolutionSize(480,320,kResolutionNoBorder);
就是这句了,setDesignResolutionSize()这个函数就是实现上述功能,它有三个参数,前面两个参数是图片资源的大小,我们的图片是480*320的,第三个参数进入这个函数看看就知道了:
前两句是断言,关于断言的解释:断言中有两个参数,先判断第一个表达式是否为真,如果为假,输出第二个参数也就是输出一个错误信息,然后调用abort退出
kResoultionNoborder,就是不显示边框,因为kResoultionNoborder选择高和宽比例中较大的一个来拉伸填充窗口,那么当高和宽比例不相同时,比如宽比例较小,那么取高度比例拉伸,这样宽度上图片会超出窗口大小,有一些在窗口外,看不到了,但是这样图片保证能填充整个窗口。
kResolu tionShowAll,则是按比例较小的来拉伸填充,比如高度比例较小,去高度比例拉伸,这样宽度上两边就会不能填充满窗口,会有黑边框。
当然这里我们选择的960*640是图片资源的2倍,就直接将图片资源拉伸2倍填充了,选哪个都一样。有兴趣的可以自己找其他大小图片来测试下。
这样我们就搞定了,得到960*640窗口大小的启动画面:
这样就搞定了,更换这张图片我们完全可以做出自己游戏的第一个画面了。


FROM: http://blog.sina.cn/dpool/blog/s/blog_8bfdbc3f01017ljk.html?vt=4

猜你在找的Cocos2d-x相关文章