位置: 编程技术 - 正文
推荐整理分享cocos2dx HelloWorld代码分析,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
2.可见,在projects目录下多了一个Hello的文件夹:3.打开Hello,再打开里面的proj.win,就可以看到有一个Hello.sln,这个是VS的工程文件,双击打开4.如图:5.先运行一下项目看看,按CtrlF5,编译成功之后会显示下图:6.首先,当我们新建一个Cocos2d-x项目时,就会默认创建一个HelloWorldScene场景类,可以理解为上图显示在窗口的画面。那么这个画面是如何显示到窗口的呢?我们来打开Hello项目里的AppDelegate.cpp文件,我们只看applicationDidFinishLaunching函数:(1)pDirector->setDisplayStats(true);设置是否显示游戏的帧数等调试信息
(2)pDirector->setAnimationInterval(1.0/);设置游戏的帧率,在这里是帧每秒
(3)CCScene* pScene = HelloWorld::scene();创建一个场景,也就是前面提到的场景类
(4)pDirector->runWithScene(pScene);最重要的地方,只有执行了这一步,才能让场景类显示出来
7.然后我们再来看看HelloWorldScene.h的代码menuCloseCallback函数是一个回调函数scene函数是不可缺的,等会会在HelloWorldScene.cpp中定义,之前在AppDelegate.cpp中创建一个场景时用到:
再来看看CREATE_FUNC(HelloWorld),这是一个宏函数,它的具体实现代码(替换参数之后)如下:
8.在HelloWorldScene,cpp中scene()的实现:(1)CCScene* scene=CCScene::create(); 创建一个场景类。大家注意到了吗?这个场景类并不是HelloWorld本身。
(2)HelloWorld* layer = HelloWorld::create(); 创建一个HelloWorld对象,create函数正是用宏CREATE_FUNC(HelloWorld)定义的。如果仔细看HelloWorldScene.h的代码可以发现,HelloWorld继承了CCLayer类,要具体了解CCLayer和CCScene的关系,可以看下面的基础概念介绍:
可见,一个场景类里面有多个layer,上面的HelloWorld对象就是一个Layer,CCScene就是一个Scene,
(3)scene->addChild(layer); 将layer对象添加到scene对象
(4)return scene; 返回scene对象
【新功能】“回调特性”的使用教程: 1.创建文件,修改自定义类名称。H'WFORso[点击根节点eI/I:G{f,]eLOvaj:L(!XYH@Mzwi(6ys5在属性栏中修改自定义类类名,如:MyClassl))~;EE~*w6*(h9!_T.加入UI控件,修改回
cocos2dx3.3 跑马灯功能的简单实现 ================================================头文件Marquee.h================================================#ifndef__H_MARQUEE_H__#define__H_MARQUEE_H__#includecocos2d.hclassMarquee:publiccocos2
cocos2dx3.3 便条提示语功能简单实现 =====================头文件===#ifndef__H_NOTETIP_H__#define__H_NOTETIP_H__#includeGlobal.hclassNoteTip:publicLayer{public:NoteTip();~NoteTip();CREATE_FUNC(NoteTip);staticvoidshow(constchar*content)
友情链接: 武汉网站建设