框架认识主体步骤:
- 对框架中对象的认识
- helloworld新建项目解析
- 认识源码大致的具体实现
框架中的对象:
说到框架中的对象,最主要的有director(导演),scene(场景),layer(图层),sprite(精灵),action(动作)和node(节点),这里我们先把action看作对象。
接下来,我们用一张图来进行分析:
我们用现实中的场景来解释Cocos2d的整体框架,我们可以把整个框架看作舞台剧,director(导演)负责掌控整个舞台,主要的的作用负责场景的切换,重启,暂停,世界坐标和GL坐标之间的切换,对节点(游戏元素)的控制,还有一些游戏数据的保存调用,屏幕尺寸的获取等工作。主要的实现函数有:
shareCCDirector() // 创建一个director对象 runWithScene() // 开始一个场景 replaceScene() // 替换场景
接下来的两个函数要先介绍Cocos2d中场景的转换,导演会产生一个容器用来存放我们的场景,我们把创建好的场景放置容器中,在需要的时候切换出来,类似于我们C++所使用的堆栈,还可以这样想像,舞台剧一般分为很多幕,当我们要切换场景时,只要把前面的场景清除,拉开后面的帘子,可以比较快速的实现场景的切换,而我们在做这样的切换时,就用push和pop来实现。(*这里提示一点,后创建的场景会覆盖先前的场景,但是我们也可以利用函数调整场景的覆盖顺序。)
pushScene() // 将场景放置到容器当中 popScene() // 将场景从容器中取出 pause() // 暂停场景 resume() // 重新绘制场景 end() // 释放和终止执行场景,同时退出应用
scene(场景):其主要用途是用来对各个layer进行划分,使我们的项目整体看起来比较规范。(一个scene可以有多个layer)