[cocos2dx]抽象元素——CCDirector导演类
在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); //从队列中弹出一个场景。 这个场景将替换正在运行的场景.
void popScene(); //从队列中弹出所有的场景,直到只有根场景在队列中 这个场景将替换正在运行的场景.
void popToRootScene();//弹出从队列中的所有场景,直到它到达 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导演类相关推荐
- cocos2d-x 学习笔记(2)cocos2d-x重要概念,项目结构及 CCDirector 导演控件
cocos2d-x 学习笔记(2)cocos2d-x重要概念及项目结构 在cocos2d引擎中,有几个概念,分别是导演,场景,布景和人物角色. 导演(CCDirector)在cocos2d-x引擎中, ...
- 【Cocos2dx】利用导演类、场景类完成重新开始游戏、暂停游戏、关闭游戏功能
重新开始游戏.暂停游戏.关闭游戏是绝对是游戏的基础,虽然代码不多,不过这要利用到Cocos2dx导演类.场景类完成,事先如果不对其进行了解,绝对是很难做出来. 下面用一个小例子说明如何利用导演类.场景 ...
- Cocos2d-x 基础元素
看过本章,然后实践之后,应该会掌握以下的认识: 1.Cocos2d-x引擎的基本运转过程 2.Cocos2d-x引擎的一些初始设置 3.对导演及图层及现实对象的认识 4.如何定义自己的显示对象 1.引 ...
- CSS伪类(Pseudo-classes)、伪元素、伪类选择器
CSS伪类(Pseudo-classes)和伪元素(详细) 那什么是伪类? 伪类是添加到选择器上的关键字,指定元素的特殊状态,伪类可以根据内容的状态来应用不同的样式: 伪类选择元素基于的是当前元素处于 ...
- C++编程练习:抽象类——编写一个程序,计算三角形、正方形的面积,抽象出一个基类base。
例.编写一个程序,要求计算三角形.正方形的面积,抽象出一个基类base,在其中说明一个虚函数display( )用来展示其参数且求出面积. 代码如下: 头文件headfile.h: #pragma o ...
- HTML与CSS基础之子元素的伪类(七)
<!DOCTYPE html> <html><head><meta charset="UTF-8"><title>子元素 ...
- java的string访问某个元素_CSS伪类与伪元素总是傻傻分不清,这份总结够面试用了
熟悉前端的人都会听过 css 的伪类与伪元素,然而大多数的人都会将这两者混淆.本文从解析伪类与伪元素的含义出发,区分这两者的区别,并且列出大部分伪类与伪元素的具体用法,即使你有用过伪类与伪元素,但里面 ...
- Java 设计模式 Day1 之面向抽象原则:抽象(abstract)类的设计与应用分析
文章目录 前言 一.抽象(abstract)类的设计要点 二.抽象类的应用实例 2.1.创建一个抽象类 2.2.创建抽象类非抽象子类 2.3.通过上转型对象调用子类方法 总结 前言 面向抽象原则是面向 ...
- css横向排列_CSS中伪元素和伪类的经典使用技巧
随着前端技术的发展,CSS样式的制作在网页中占据着十分重要的地位.前台页面的样式布局.以及展现给用户的体验效果都离不开CSS;虽然在实际的开发中会大量的使用一些主流的UI样式框架,但这些样式框架每一个 ...
最新文章
- C语言中的选择法排序怎么,请问高手们 C语言中选择法排序和冒泡法排序的思想,两种方法有何不同,搞不懂,请举例详细说明一下.谢谢。...
- node 生成随机头像_唯一ID生成算法剖析
- Javascript中正则表达式的全局匹配模式
- 求数列1/3到1/n之和
- oracle instr函数详解
- eclipse 设置默认编码为Utf-8
- Zephyr移植到NXP MIMXRT1060_EVK-RT1061 CVL5A过程
- php引用符号详解——————给变量起小名
- 微信小程序订单展示(3)
- vue使用prop通信出错:Avoid mutating a prop directly since the value will be overwritten whenever the parent
- JS阻止form表单提交失败
- 最简单的迁徙图实现demo
- python3视频教学百度云盘_Python3自学基础到入门视频教程[百度云盘]
- arcgis图斑尖角检查_arcgis 定位图斑,并且高亮显示
- R语言修改下载安装包install.package的默认存储位置
- 腾讯云年终选购云服务器攻略!
- CSDN博客的第一天
- eclipse安装并配置环境
- 虚拟机静态IP的配置
- 点击 桌面 计算机 空白 不响应,win7桌面空白处右键电脑迟钝怎么办 为什么电脑在桌面点击鼠标右键反应很慢...
热门文章
- 2 errors and 0 warnings potentially fixable with the `--fix` option,vue-cli3中eslint详解
- Linux系统下录音方法
- 第24章 JVM监控及诊断工具-GUI篇
- C++ 结构体转json
- Android 定时器+倒计时 仿淘宝秒杀
- 互联网个性化推荐与精准营销实战视频教程
- jquery.uploadify 限制上传数量删除图片后无法再次上传
- 「智头条」智能家居企业扎堆IPO:欧瑞博重启IPO,凯迪仕、立林启动IPO;魅族新专利可无感匹配智能家居
- matlab 复数单位化,MATLAB数据矩阵单位化,归一化,标准化
- ZTE ME3630 4G模块在Hi3559AV100平台上拨号指令流程