[cocos2dx]抽象元素——CCDirector导演类

[cocos2dx]抽象元素——CCDirector导演类,第1张

概述在cocos2d-x引擎中,CCDirector类是整个游戏的组织和控制核心,游戏的运行规则,游戏内的CCScene(场景)、布景(CCLayer)、角色(CCSprite)等的运动,均由CCDirector管理,其在游戏中起着指定游戏规则让游戏内的场景、布景和任务有序的运行。在整个游戏里面,一般只有一个导演,游戏开始和结束时,都需要调用CCDirector的方法完成游戏初始化或销毁工作.在Coc

在cocos2d-x引擎中,CCDirector类是整个游戏的组织和控制核心,游戏的运行规则,游戏内的CCScene(场景)、布景(cclayer)、角色(CCSprite)等的运动,均由CCDirector管理,其在游戏中起着指定游戏规则让游戏内的场景、布景和任务有序的运行。在整个游戏里面,一般只有一个导演,游戏开始和结束时,都需要调用CCDirector的方法完成游戏初始化或销毁工作.在Cocos2d-x是很重要的一个类,用于统筹管理,主要完成以下工作:

初始化游戏和销毁游戏; 管理调度场景; 调整设置OpenGL信息; 获取、设置游戏的相关细节;

使用方法:Director::getInstance()->Methodname

类CCDirector继承关系图
属性相关
//获得当前运行的场景,cocos2dx同时只能运行一个场景  Scene* getRunningScene();  //获取fps值  double getAnimationInterval();  //设置fps值  voID setAnimationInterval(double dValue);  //fps是否是显示状态  bool isdisplayStats();  //设置是否显示fps  voID setdisplayStats(bool bdisplayStats);  //获取每帧秒数  float getSecondsPerFrame();  //获取openGLVIEw  GLVIEw* getopenGLVIEw();  //设置openGLVIEw  voID setopenGLVIEw(GLVIEw *pobOpenGLVIEw);  //判断是否暂停  bool isPaused();  //获取调用到现在的所有帧数  unsigned int getTotalFrames();  //判断被替换的场景是否接收到cleanup事件//replace方式会,而push方式则不会  bool isSendCleanupToScene(voID);
窗口相关
//返回以点为单位openGL视图的大小const Size& getWinSize() const;  //返回以像素为单位openGL视图的大小Size getWinSizeInPixels() const;//返回以点为单位的 OpenGL 视图的可见大小.  Size getVisibleSize() const;//返回以点为单位的 OpenGL 视图的初始化时的可见大小Vec2 getVisibleOrigin() const; //UIKit的坐标转换到一个OpenGL坐标 使用当前布局(横向或纵向)有效的(多)触摸坐标Vec2 convertToGL(const Vec2& point);//一个OpenGL坐标转换到UIKit的坐标 点组成的窗口调用有效的节点上面的点  Vec2 convertToUI(const Vec2& point);
场景管理相关
//根据给定的场景进入 Director的主循环 只能调用他运行你的第一个场景voID runWithScene(Scene *scene); //暂停执行正在运行的场景中,pushing一个在堆栈上推暂停的场景。 新的场景将被执行.voID pushScene(Scene *scene);  //从队列中d出一个场景。 这个场景将替换正在运行的场景.voID popScene(); //从队列中d出所有的场景,直到只有根场景在队列中 这个场景将替换正在运行的场景.voID popToRootScene();//d出从队列中的所有场景,直到它到达 level.voID popToScenestackLevel(int level);//用一个新的替换正在运行的场景。终止正在运行的场景。 仅在有一个正在运行的场景的时候调用他. voID replaceScene(Scene *scene);  //结束执行,释放正在运行的场景。voID end();//暂停正在运行的场景。voID pause(voID);  //恢复暂停的场景 预定的定时器将被再次激活。 “推迟执行”的时间将是0(如果游戏没有暂停)voID resume();
内存和OpenGL
//移除所有cocos2dx缓冲数据  voID purgeCachedData(voID);    //设置默认值  voID setDefaultValues(voID);    //设置OpenGL默认值  voID setGLDefaultValues(voID);    //开关OpenGL Alpha混合通道  voID setAlphaBlending(bool bOn);    //设置景深测试  voID setDepthTest(bool bOn);
总结

以上是内存溢出为你收集整理的[cocos2dx]抽象元素——CCDirector导演类全部内容,希望文章能够帮你解决[cocos2dx]抽象元素——CCDirector导演类所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1066070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存