cocos2d-x 架构之应用程序架构
2015-07-30 11:22
316 查看
一个游戏对应一个Application对象。Application的职责是管理游戏生命周期并设置默认窗口,获取平台及本地化信息等。各个平台对应的入口,首先初始化一个Application对象。
一个屏幕对应一个Director,一个Application可以创建多个Director。
Driector控制着一个游戏场景中的一切,包括opengl es的初始化、窗口管理、场景管理及切换、游戏循环等。其中场景管理中,Drictor提供2种方法从一个场景切换到另一个场景。一种是使用replaceScene()方法直接替换,这种方法是直接删除并释放之前的场景。如果只是切换到一个临时场景的话,Drictor还提供了一个场景栈来管理这些场景。
Application::run是整个程序的入口,每一帧的开始,cocos2d-x都会先检测外在事件的发生比如,用户输入,触摸,鼠标,重力感应等。然后进行动画计算,物理模拟,物理模拟完成,逻辑更新,逻辑更新完成,UI树遍历,便利完成,绘制,绘制完成,交换缓冲区,自动释放。一帧结束。每帧循环执行。
cocos2d-x中有2种更新机制,都是通过scheduler来实现的,第一种,是与游戏帧率保持一致,通过scheduleUpdate()方法来注册,this->scheduleupdate();直接调用。第二种方法,schedule()方法来注册,里面可以自定义参数。
一个屏幕对应一个Director,一个Application可以创建多个Director。
Driector控制着一个游戏场景中的一切,包括opengl es的初始化、窗口管理、场景管理及切换、游戏循环等。其中场景管理中,Drictor提供2种方法从一个场景切换到另一个场景。一种是使用replaceScene()方法直接替换,这种方法是直接删除并释放之前的场景。如果只是切换到一个临时场景的话,Drictor还提供了一个场景栈来管理这些场景。
Application::run是整个程序的入口,每一帧的开始,cocos2d-x都会先检测外在事件的发生比如,用户输入,触摸,鼠标,重力感应等。然后进行动画计算,物理模拟,物理模拟完成,逻辑更新,逻辑更新完成,UI树遍历,便利完成,绘制,绘制完成,交换缓冲区,自动释放。一帧结束。每帧循环执行。
cocos2d-x中有2种更新机制,都是通过scheduler来实现的,第一种,是与游戏帧率保持一致,通过scheduleUpdate()方法来注册,this->scheduleupdate();直接调用。第二种方法,schedule()方法来注册,里面可以自定义参数。
相关文章推荐
- cocos2d-x 节点坐标转换为世界坐标
- cocos2d-x中场景间的参数保持和传递(方法整理)
- cocos2d-x AnchorPoint锚点
- Cocos2dx之文字显示
- cocos2dx安卓打包与调试(适用quick3.5)
- Quick-Cocos2d-x初学者游戏教程(一)
- cocos2d-x 用脚本创建新的工程
- 9秒学院Cocos2d-x入门教程(详细的实例和讲解)
- cocos2dx骨骼动画Armature源码分析(一)
- 我对cocos2dx的理解和总结
- quick Cocos2d-x lua 八方向摇杆代码实现
- Cocos2d-x 强制设置运动刚体的位置
- cocos2dx中的三种缓存
- 【Android】给Cocos2d-x的EditBox添加确定按钮
- Cocos2dx之CCLayer层
- Cocos2dx之精灵坐标系
- cocos2d-x 角色选择视图 类似ListView
- 【Cocos游戏实战】功夫小子第八课之游戏打包和相关问题说明
- 【Cocos游戏实战】功夫小子第七课之游戏主功能场景逻辑功能和暂停功能场景的分析和实现
- Cocos2dx NotificationCenter(广播或通告)的使用方法