cocos2d-x的大体开发流程是,首先使用win32版进行代码编写并完成游戏,而后将代码迁移到对应的开发环境上进行交叉编译完成游戏打包,如iphone上是mac+xcode,android是eclipse+ADK+NDK。实现一处编码,处处编译。android
基本概念
1. 场景(CCScene)
展现类场景:播放视频戒简单的在图像上输出文字,来实现游戏的开场介绍、胜利、失败提示、帮助简介。
选项类场景:主菜单、设置游戏参数等。
游戏场景:这是游戏的主要内容,除了这个场景外的其余类场景基本上都是通用架构实现的。
2. 层(CCLayer)
基本上是透明或者半透明的
层的叠加是有顺序的(事件响应机制的顺序)
提供一些公用局:处理菜单用的菜单局(Menu),处理颜色显示的颜色局(ColorLayer)等。
每一层又能够包含不少各式各样的内容要素:文本(Label)、连接(HTMLLabel)、精灵(Sprite) 、地图等等。其中,精灵是重点。
3. 精灵(CCSprite)
精灵是整个游戏开发处理的主要对象,地方的飞机、坦克是系统 AI 控制的精灵,表明是整个游戏开发处理的主要对象,地方的飞机、坦克是系统 AI 控制的精灵,表明玩家控制的我方飞机也是精灵。甚至随机飞过的一片于、一只鸟都是精灵。
从技术上讲,精灵就是一个能够不断变化的图片。返些变化包括:
- 位置移动
- 旋转(以自身几何中心或以某个屏幕坐标为轴)
- 放大缩小
- 运动(按必定时间间隔连续显示一系列图像,造成运动效果)
所谓游戏,就是玩家操做一个或多我的工控制的精灵不一个或者若干个系统控制的敌方
精灵进行互动:紧身肉搏、远程射击、贴近对话等等。
4. 导演(CCDirector)
按照面向对象的设计原则和反向依赖原则:精灵不该该依赖层、层不该该依赖场景、场景不该该
依赖整个流程。导演对象是
整个流程的表明,他负责游戏全过程的场景切换。
导演一般只有一个,所以这个对象是单例。(单例模式)
5. 动做(CCAction)
主要是配合精灵使用,将精灵绑定响应的动做,组成要实现的变化效果。
6. 镜头(CCCamera)
每个结点(CCNode)都须要使用CCCamera。当结点发生缩放、旋转和位置变化的时候,都须要覆盖CCCamera,让这个结点经过CCCamera从新渲染。
7. 锚点