cocos2d-x 架构之应用程序架构

前端之家收集整理的这篇文章主要介绍了cocos2d-x 架构之应用程序架构前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

一个游戏对应一个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()方法注册,里面可以自定义参数。

猜你在找的Cocos2d-x相关文章