Cocos2d-x理论知识最初步学习;与Android,Java swing进行对比
整个框架
- 设计思想:导演-场景-层-精灵
- 导演-场景-布景-角色-动作-节点
- 架构方案:节点树-摄像机
坐标系统
- 屏幕坐标系
- OpenGL坐标系
- 世界坐标系
- 本地坐标系
- 锚点
- 坐标系转换
- 逻辑数值与真实数值
内存管理
- C/C++ 内存管理机制
- 引用计数机制
- 自动释放池
UI系统
事件处理
- 单点事件处理
- 多点事件处理
- 实时单点事件处理
- 重力感应事件处理
- 键盘事件处理
动作行为(动画)
- 动作与动作执行
- 动作类型
- 瞬时动作
- 延迟动作
- 组合动作
- 速度变化
- 扩展动作
- ActionManager
对比Android与Java swing
学习cocos2d-x理论的时候,发现它和Android和swing还是很相像的,对此总结一下增进理解。
对比项目 | cocos2d-x | android | java swing |
---|---|---|---|
架构模式 | 导演-场景-层-精灵 | MVC | MVC |
坐标系统 | 多样 | 单一 | 单一 |
内存管理 | C/C++ | Java自动 | Java自动 |
UI系统 | 使用控件,可自定义 | 在xml中使用,可自定义 | 有自带的控件,自定义没有尝试过 |
事件处理 | 监听器 | 监听器 | 监听器 |
动作行为 | 多样,功能强,类型多 | 多样,Animation分多样,有加速器 | 没尝试过 |
对比看出,三种类型的平台都有着相同的实现方案。可见编程平台方面是互相想通的。如cocos2d-x的动画与android的动画相比,android的动画类型有渐变,平移,旋转;速度方面有加速器,有自带的也有自定义的。cocos2d-x动画分的更细,相比功能更加强大。
想必编程语言平台思想是想通的,学习过程中务必也要有个侧重点,不能各个技能都是浅尝则止,必须要有个擅长的地方。