cocos

CCDirector:  导演,负责场景的切换以及场景的信息。如宽度,高度,旋转场景内容。

CCScene:     场景. 场景包含有布景,精灵,每场戏的不同,要切换场景。游戏中可分为主界面, 游戏, 分数榜,结束界面等。

CCLayer:     布景. 类似是层的概念,也可来源于PS的层的概念。每一层都带有众多精灵等

CCSprite:    精灵。就是演员的,演员就需要加入到层里面去的。有相应的动作。

CCAction:    动作。精灵的动作。


场景切换时通过Director导演类来实现的,在cocos中定义了如下几种场景切换函数:

1,void runWithScene(Scene *scene)。这是一个运行场景的函数,该函数的使用情况是当前没有场景正在运行,因为一次只能运行一个场景。

2,void replaceScene(Scene *scene)。   这是第一种用来切换到另一个场景的函数,用一个新的场景来代替当前场景,当前场景则会被终端释放。

因为pushScene并不会销毁前一个scene,仅仅是将后一个scene按照堆栈的方式加入到前一个scene的上面。如果自身代码中内存管理写的不好的,利用pushScene很难发现该方面的问题,一旦崩溃定位都很难定位。replaceScene可以及早的将隐含的问题给暴露出来。

3,void pushScene(Scene *scene)。      这是第二种用来切换到下一个场景的函数,用一个新的场景来代替当前场景,当前场景挂起压入场景堆栈中。

    void  popScene(Scene* scene)。       该函数配合pushScene使用,用来返回上一个场景。

    void  popToRootScene(Scene*scene)。配合pushScene使用,返回根场景。

你可能感兴趣的:(cocos)