1.首先知道cocos2dx的都知道,框架会创建一个AppDelegate单例对象,AppDelegate的run方法里面会创建一个CCEGLView单例对象,CCEGLView会做一些窗口的注册,还有窗口过程的回掉函数WindowProc
![]()
在窗口第一次激活显示的时候CCEGLView::WindowProc 这个方法立马回去调用CCApplication::sharedApplication()->applicationWillEnterForeground(),在applicationWillEnterForeground函数里面会去调用CCDirector::sharedDirector()->startAnimation(),注意看CCDirector::sharedDirector()会发现,这个函数里面创建了一个director对象。

CCDisplayLinkDirector是继承自CCDirector这个类,然后还实现了一些比如游戏里面的mainloop方法等,继续往下看
s_SharedDirector->init()这个方法里面就很有意思了。

本文介绍了cocos2dx的初始化流程,从AppDelegate的创建到CCEGLView的窗口注册,再到CCDirector的启动和主要循环。重点讲解了在CCDirector的init方法中,如何初始化调度器、动作管理器、触屏管理器等关键组件,最后通过run函数进入主循环,展示窗口内容。
最低0.47元/天 解锁文章
3134

被折叠的 条评论
为什么被折叠?



