Cocos从入门到精通--《创建第一个项目:HelloWorld》
来源:互联网 发布:校园网发现代理软件 编辑:程序博客网 时间:2024/05/19 13:07
上节课我们讲解了cocos2-x v3.7版本的下载安装,也展示了使用CocosStudio编译不同平台执行程序的方法,大家是不是对新版本的Cocos引擎充满期待?今天我们就创建一个工程,给大家展示一下cocos2d-x v3.7 创建Hello World都有哪些新的改变。
本节课的课程视频地址:http://edu.csdn.net/course/detail/1342/20981?auto_start=1
火云开发课堂论坛地址:http://www.firestonegames.com/bbs/forum.php
创建Hello World工程
首先我们启动我们的Cocos 引擎的软件,选择“项目”选项,点击“新建项目”。如图:
然后选择Cocos项目,如图:
然后我们可以看到创建项目所需进行的选项:
这里我们给项目起名字叫HelloWorld,项目的路径就放到桌面的code的文件夹里面。屏幕方向我们选择横屏,引擎版本还是选择cocos2d-x v3.7版本,项目语言选择C++。选择完以上选项之后点击完成。项目就创建出来了,这时候Cocostudio会自动弹出来,如图:
我们可以看到一个名词为“MainScene”的场景被创建出来,场景中有一个经典的Cocos背景图,但是缺少了“Hello World”的这个文本标签,这个显然是我们不可以接受的,上帝说:“一定要有Hello World!”。我们在左侧控件面板找到“文本”这个选项,如图:
我们拖动“文本”到 “MainScene”里面。这样我们就新建了一个文本标签,接下来我们来修改一下新建的“文本”的属性,我们选中“文本”,在属性一栏进行修改。如图:
我们可以在“名称”选项里修改文本的名字,在“坐标“选项里修改文本的坐标。
在“文本”选项中我们要写上“Hello World”。然后我们来修改文字显示的颜色,字体的大小。我们可以看到下面有一个“导入字体文件”的选项,该选项是干嘛的呢?如果你有Cocos开发经验的话,你一定能猜出来,它是非常有用的,具体多有用我现在就是不告诉你(哈哈,开个玩笑,等我们讲Label的时候会详细讲解的)。
做完这些之后我们的“Hello World”就显示出来了,我们要command + s(win上面是 ctrl + s)进行保存,command + p (win上面是ctrl + p) 来发布Cocostudio的文件。
工程目录分析
我们打开我们创建的项目的工程目录,如图:
我们双击HelloWorld.xcodeproj,这时候就启动了Xcode开发工具。我们可以看到工程目录:
从工程的目录我们可以看出,新版本的Cocos引擎创建出来的工程,和之前的不一样了,应该说是很不一样了。首先现在只剩下一个HelloWorld的工程,之前的cocos2d的工程不见了。在Resources里面多了一个MainScene.csb,这个东东就是我们刚才在cocostudio里面创建的,随着我们的“发布”,也就是你按下command + p之后他就会生成了。
从工程的目录我们可以看出,新版本的Cocos引擎创建出来的工程,和之前的不一样了,应该说是很不一样了。首先现在只剩下一个HelloWorld的工程,之前的cocos2d的工程不见了。在Resources里面多了一个MainScene.csb,这个东东就是我们刚才在cocostudio里面创建的,随着我们的“发布”,也就是你按下command + p之后他就会生成了。
看图我们仔细看红色标注的.a静态库,这个东西是干嘛的呢,它就是cocos2d-x的工程编译成的静态库,我们之所以找不到cocos工程源码了,是因为他已经被变成静态库放到这儿了,那么你可能会问,什么要编译静态库呢,这是因为,编译静态库之后我们的编译速度就快了很多,非常多,之前编译一个新建成的工程,是非常耗时的,我i7四核,16G内存,加256闪存的高富帅电脑配置还要编译5分钟左右呢,我基本上都是刚开始编译工程就趴桌子上睡一觉,有时候睡醒了还没编译好,说夸张点,编译的时间都够博尔特绕地球转三圈了。现在使用静态库就完美解决了编译慢的问题。这样 “妈妈再也不用担心我编译工程的时候睡着了”。当然使用静态库也能让你的工程运行更加流畅。
我们运行工程,会看到:
工程代码详解
下面我们来看一下代码。
HelloWorld是新建的Cocos2d-x的Layer类,在头文件中只有三个函数,对Cocos2d-x引擎稍有经验的人都非常熟悉。我加入了注释,大家可以自行了解。
下面我们来看一下HelloWorld的源文件:
大家通过注释,可以看到,对比以往Cocos2d-x版本的最大不同是它已经不在代码中创建Cocos背景图以及HelloWorld文本标签了,而是通过一个叫CSLoader的加载器直接读取CocosStudio的二进制信息文件。这小小的一点改变,实际上代表着Cocos的巨大进步,说明Cocos的开发已经进入工具化时代,这一点改变要求我们在未来要更关注Cocos一体化编辑器CocosStudio的使用。(顺便报个料:作为CocosStudio曾经的产品总监,红孩儿老师参与了CSLoader的设计开发,因为很多网友向红孩儿老师吐槽CocosStudio加载Json太慢,红孩儿老师努力将这部分改成可兼容JSON格式的CSB二进制文件,在格式上进行极限优化,最终使加载速度大幅度提升!)。
好了,今天的我们关于HelloWorld工程的创建与讲解就到这儿吧,谢谢大家。
作业:
创建一个cocos项目。
- Cocos从入门到精通--《创建第一个项目:HelloWorld》
- Kubernetes 从入门到进阶 第一个Helloworld程序
- Android三十个月从入门到精通--第一范式
- 创建第一个cocos2d-x项目HelloWorld
- django创建第一个项目helloworld
- 使用springboot创建第一个helloworld项目
- 第一个cocos项目
- Maven入门实践:从安装到创建第一个project
- CUDA从入门到精通到精通_笔记3:第一个CUDA程序及其代码详解
- Cocos从入门到精通--《Cocos引擎在mac平台上的搭建》
- Cocos从入门到精通--《Cocos引擎在Windows平台上的搭建》
- 转 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
- 关于python中urllib.urlencode的时候出错:UnicodeEncodeError: ‘ascii’的记录
- oracle表空间用户添加、删除操作
- When you are old (当你老了)
- [leetcode] Length of Last Word C语言
- 游戏纹理抖动的成因分析和解决方案
- Cocos从入门到精通--《创建第一个项目:HelloWorld》
- 播放Android项目工程里的视频文件
- 【二十五】回顾jekyll安装以及简短总结
- 解决SVN Can’t open file ‘/XXX/xxx/db/txn-current-lock’错误
- LDA主题模型的java代码实现
- 第一篇 cocos2d-x学习总结
- UIPopoverPresentationController简单使用
- 支付宝中的return_url和notify_url
- STL的pair