(转载)cocos2d-X学习之主要类介绍:CCDirector
来源:互联网 发布:精准扶贫数据平台网址 编辑:程序博客网 时间:2024/05/23 01:58
转载之:http://www.cnblogs.com/lhming/archive/2012/07/01/2572220.html 感谢原作者的幸苦劳动。
在cocos2d-x里面,游戏的任何时间,只有一个场景对象实例处于运行状态,该对象可以作为当前游戏内容的整体包对象
图示为继承关系图,最底层的父类为CCCopying.
Cocos2d-x引擎除了提供了CCDirector,还提供了一个CCDisplayLinkDirector,CCDisplayLinkDirector是一个可以自动刷新的CCDdirector。
CCDirector主要函数如下:
CCScene * getRunningScene (void) //获取当前运行的场景double getAnimationInterval (void)//获取当前的FPSvirtual void setAnimationInterval (double dValue)=0 //设置FPS C++纯虚函数,必须自己实现。bool isDisplayFPS (void) //是否在屏幕底部显示FPS 新版本改为isDisplayStats void setDisplayFPS (bool bDisplayFPS) //设置在屏幕底部显示FPS 新版本改为setDisplayStatsfloat getSecondsPerFrame(void) //获取每秒的帧CC_GLVIEW * getOpenGLView (void) //获取CCEGLViewvoid setOpenGLView (CC_GLVIEW *pobOpenGLView) //设置CCEGLViewbool isNextDeltaTimeZero(void) // 获取下次增量时间是否为零 void setNextDeltaTimeZero(bool bNextDeltaTimeZero) //设置下次增量时间是否为0bool isPaused (void) //当然是否适合暂停unsigned int getFrames (void) //获取从director开始起,所有被调用的Frames的数量ccDirectorProjection getProjection (void) //获取OpenGl的projectionvoid setProjection (ccDirectorProjection kProjection) //设置Opengl 的projectionvoid setViewport(void) //设置OpenGL的Viewport bool isSendCleanupToScene (void) // 场景替换时,是否接收到cleanup时间,若新的的场景是被push进来的,旧的场景不会收到cleanup 事件,若新的场景是被替换进来的,旧的场景就能够收到cleanup事件。CCNode* getNotificationNode() //在主场景被visit之后将被访问的对象,这个对象必须可以执行visit selector。经常用来挂载notification对象,如CCNotificationsvoid setNotificationNode(CCNode *node); //设置在主场景被visit之后将被访问的对象CCDirectorDelegate* getDelegate() const; //void setDelegate(CCDirectorDelegate* pDelegate);CCSize getWinSize (void) //获取Open gl view的大小,单位为点CCSize getWinSizeInPixels (void) // 获取以像素为单位的open gl view大小CCSize getDisplaySizeInPixels (void) //获取以像素为单位的open gl view 的显示区域大小void reshapeProjection (const CCSize &newWindowSize) //改变projection的大小CCPoint convertToGL (const CCPoint &obPoint) //将UIKIT坐标体系转化为opengl坐标体系CCPoint convertToUI (const CCPoint &obPoint)//将opengl坐标体系转化为UIKIT坐标体系float getZEye (void) //获取缺省镜头Z的位置void runWithScene (CCScene *pScene) //运行场景void pushScene (CCScene *pScene) //push场景void popScene (void)//pop场景void replaceScene (CCScene *pScene) //替换场景void pause (void) //暂停游戏void resume (void) //回复游戏virtual void stopAnimation (void)=0 //停止动画virtual void startAnimation (void)=0 //开始动画void drawScene (void) //每次frame都会被调用,无需自己调用void purgeCachedData (void) //删除缓存的数据void setGLDefaultValues (void) //设置Opengl的默认值void setAlphaBlending (bool bOn) //设置是否启用opengl的alpha通道void setDepthTest (bool bOn)//设置是否测试景深virtual void mainLoop (void)=0//游戏主循环void applyOrientation (void) //是设备方向设置生效ccDeviceOrientation getDeviceOrientation (void) //获取设备方向void setDeviceOrientation (ccDeviceOrientation kDeviceOrientation) //设置游戏横屏bool enableRetinaDisplay (bool enabled) //设置是否启用视网膜屏支持bool isRetinaDisplay ()//是否启用视网膜屏支持void resetDirector () //重置游戏static bool setDirectorType (ccDirectorType obDirectorType) //设置directortype,目前主要有kCCDirectorTypeNSTimer、kCCDirectorTypeMainLloop,kCCDirectorType-ThreadMainLoop、kCCDiretorTypeDisplayLknk
具体可见CCDirector.h 有详细的说明。
- (转载)cocos2d-X学习之主要类介绍:CCDirector
- cocos2d-X学习之主要类介绍:CCDirector
- (转)cocos2d-X学习之主要类介绍:CCDirector
- cocos2d-X学习之主要类介绍:CCDirector
- (转载)cocos2d-X学习之主要类介绍:场景(CCScene)
- (转载)cocos2d-X学习之主要类介绍:节点CCNode
- (转载)cocos2d-X学习之主要类介绍:动作:CCAction
- cocos2d-x学习之CCDirector
- (转载)cocos2d-X学习之主要类介绍:摄像机(CCCamera)
- (转载)cocos2d-X学习之主要类介绍:精灵角色(CCSprite)
- cocos2d-x之CCDirector类1
- bombing:cocos2d-x之CCDirector类2
- cocos2d-X学习之主要类介绍:动作:CCAction
- cocos2d-X学习之主要类介绍:摄像机(CCCamera)
- cocos2d-X学习之主要类介绍:场景(CCScene)
- cocos2d-X学习之主要类介绍:布景:CCLayer
- cocos2d-X学习之主要类介绍:节点CCNode
- (转)cocos2d-X学习之主要类介绍:场景(CCScene)
- Custom Control 控件的使用
- 用PS对多张照片进行批处理的步骤
- 博弈分析(取石子游戏的数学问题)
- 《算法导论》习题解答 Chapter 22.1-4(去除重边)
- UVa11541 - Decoding
- (转载)cocos2d-X学习之主要类介绍:CCDirector
- 《算法导论》习题解答 Chapter 22.1-5(求平方图)
- CF 7D: Palindrome Degree
- 避免代码注释的五大理由
- [矩阵乘法][动态规划]Arrange the Schedule
- 关于qsort的比较函数的不同写法对于大数据造成的错误
- sprintf()函数
- 修改Linux内核启动图片
- 如何成就一只懒散的团队?