原文地址http://blog.csdn.net/bill_man
从本篇文章开始,将分析cocos2D-X 3.0源代码,第一部分是从cocos2D-X学习OpenGL,也就是分析cocos2D-X 3.0的渲染代码,本篇首先介绍cocos2D-X 3.0的渲染结构,使用的是3.0正式版。
- voidDisplayLinkDirector::mainLoop()
- {
- if(_purgeDirectorInNextLoop)
- //只有一种情况会调用到这里来,就是导演类调用end函数
- _purgeDirectorInNextLoop=false;
- //清除导演类
- purgeDirector();
- }
- elseif(!_invalid)
- {
- //绘制
- drawScene();
- //清除内存
- PoolManager::getInstance()->getCurrentPool()->clear();
- }
- }
分析的起点是mainLoop函数,这是在主线程里面会调用的循环,其中drawScene函数进行绘制。那么就进一步来看drawScene函数。