构成整个游戏的流程的画面就是我们所说的场景
场景分为以下几类场景:
1.展示类场景:播放视频或简单的在图像上输入文字,来实现游戏的开场介绍、胜利、失败提示、帮助简介。
2.选项类场景:主菜单、设置游戏参数等
3.游戏场景:游戏的主要内容
每个场景都是通过不同的层的叠加和组合协作来实现不同的功能的。通常每个场景都是一个或者多个层组成的
层CCLayer
层是我们写游戏的重点,
如一个简单的主菜单是由3个层叠加实现的:
1.图像背景(Background layer)
2.运动精灵(Animation layer)
3.菜单选项(Menu layer)
cocos2D提供了一些公用层:处理菜单用的菜单层(Menu),处理颜色显示的颜色层(ColorLayer)等
每一层又可以包括很多内容要素:文本(Label)、链接(HTMLLabel)、精灵(Sprite)、地图等
精灵CCSprite
精灵是整个游戏开发处理的主要对象,就是一个可以不断变化的图片。这些变化包括:
位置移动
旋转
放大缩小
运动
导演CCDirector
按照面向对象的设计原则和反向依赖原则:精灵不应该依赖层、层不应该依赖场景、场景不应该依赖整个流程。导演对象是整个流程的代表,他负责游戏全过程的场景切换。
导演通常只有一个,因此这个对象是单例。
导演对象接收层对象/场景的要求,按照预先设计好的流程来终止、压栈、激活当前场景,引导下个场景。