学习2--了解Cocos2d-x整个引擎框架
学习重点:HelloWorld工程,Cocos2D-X引擎框架
在vs2010中打开 学习1中建立好的HelloWorld工程,了解cocos2dx的生命周期和引擎框架。
1,生命周期
学习引擎已经写好了的生命周期,在AppDelegate.h中声明了三个虚函数:
applicationDidFinishLaunching :
实现导演(CCDirector)与场景(scene)初始化,applicationDidFinishLaunching -> 导演 -> 场景 -> 图层(layer)->……
applicationDidEnterBackground :当工程进入后台的时候调用此函数。
applicationWillEnterForeground :当工程进入前端的时候调用此函数。
2,引擎框架
1)设计思想:
导演(Director) -> 场景(Scene)-> 层(Layer)-> 精灵(Sprite)
导演(CCDirector):Class that creates and handle the main Window and manages how and when to execute the Scenes.切换场景,控制场景。导演是单例模式。
场景(CCScene):布置背景。CCSceneis a subclass ofCCNodethat is used only as an abstract concept. 场景是CCNode的子类,是一种抽象化的思想。CCScene也是所有nodes的父类。
图层(CCLayer):多个图层构成场景,可嵌套。CCLayeris a subclass ofCCNodethat implements the TouchEventsDelegate protocol.图层是CCNode的子类且实现了TouchEventsDelegate协议。
精灵(CCSprite):放置在图层上,显示在场景中,具体的物体由精灵抽象化。CCSpritecan be created with an image,or with a sub-rectangle of an image.精灵可以用一个图片来创建,或也可以用一个子矩阵来创建。
动作(CCAction) :行为。 Base class forCCActionobjects. CCAction对象的基础类。 节点(CCNode):最主要的元素,所有元素的基础。Anything that gets drawn or contains things that get drawn is aCCNode. The most popular CCNodes are:CCScene,CCLayer,CCSprite,CCMenu.任何包含的东西都是在CCNode的基础之上,用的最普遍的是场景,图层,精灵,菜单。
eg:“开心消消乐”的开始画面,通过层次的方式把UI和按钮分开来
2)构架方案: 节点树,CCNode
摄像机,ACCCamerais used in everyCCNode. 可以用于任何CCNode
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |