该类创建并处理主窗体,且能维护一个场景怎样、何时执行。
CCDirection的集成图如下:
成员函数等列表详见:http://www.cocos2d-x.org/embedded/cocos2d-x/db/d7f/classcocos2d_1_1_c_c_director.html#details
详细的描述:
该类创建并处理主窗体,且能维护一个场景怎样、何时执行。
该类仍负责:
初始化OpenGL的上下文
设置OpenGL像素的格式(默认 rgb565)
设置OpenGL缓冲的深度 (默认 0bit)
设置投影(默认3D)
设置方向(默认直式/protrait)
由于CCDirector是单例模式,因此标准的使用方式是通过调用_ CCDirector::sharedDirector()->methodName();
CCDirector可以设置OpenGL默认的内容:
GL_TEXTURE_2D 为 enabled
GL_VERTEX_ARRAY 为 enabled
GL_COLOR_ARRAY 为 enabled
GL_TEXTURE_COORD_ARRAY 为 enabled
下面介绍几个函数
1.CCSize getWinSize(void)
以点的方式返回OpenGL视图的大小,并考虑任何可能旋转的窗口。
2.CCSize getWinSizeInPixels(void)
以像素的方式返回OpenGL视图的大小,并考虑任何可能旋转的窗口。
3.void pause (void)
暂停正在运行的场景
这个正运行的场景变为_drawed_ 当暂停的时候,所有的seheduled 计时器都将暂停。为减少cpu的使用率绘图率变为4FPS(frames per seconds or feet per seconds)
4. void popScene(void)
从队列中弹出一个场景
该弹出的场景将替换正在运行的场景,而正在运行的场景将被删除,如果队列中没有任何场景,则会中断执行。尽在有运行的场景时调用该函数。
5.void pushScene(void)
该方法和4介绍的方法正好相反。挂起正在运行的场景,并把该运行的场景压入挂起的场景的栈中。
新的场景将会被执行,应该避免大量把场景压栈以减少内存的分配。尽在当前场景为运行状态时,调用该函数。
6.void replaceScene(void)
用新的场景替换正在运行的场景。
正在运行的场景将被终止,尽在当前场景为运行状态时,调用该函数。