在cocos2d-x里面,游戏的任何时间,只有一个场景对象实例处于运行状态,该对象可以作为当前游戏内容的整体包对象

Cocos2d-x引擎除了提供了CCDirector,还提供了一个CCDisplayLinkDirector,CCDisplayLinkDirector是一个可以自动刷新的CCDdirector。

CCDirector主要函数如下:

CCScene *  getRunningScene (void) //获取当前运行的场景

double  getAnimationInterval (void)//获取当前的FPS

virtual void  setAnimationInterval (double dValue)=0 //设置FPS

bool  isDisplayFPS (void) //是否在屏幕底部显示FPS

void  setDisplayFPS (bool bDisplayFPS) //设置在屏幕底部显示FPS

CC_GLVIEW *  getOpenGLView (void) //获取CCEGLView

void  setOpenGLView (CC_GLVIEW *pobOpenGLView) //设置CCEGLView

bool  isPaused (void) //当然是否适合暂停

unsigned int  getFrames (void) //获取从director开始起,所有被调用的Frames的数量

ccDirectorProjection getProjection (void) //获取OpenGl的projection

void  setProjection (ccDirectorProjection kProjection) //设置Opengl 的projection

bool  isSendCleanupToScene (void) // 场景替换时,是否接收到cleanup时间,若新的的场景是被push进来的,旧的场景不会收到cleanup 事件,若新的场景是被替换进来的,旧的场景就能够收到cleanup事件。

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

cocos2d-X学习之主要类介绍:CCDirector的更多相关文章

  1. cocos2d-X学习之主要类介绍:场景(CCScene)

    场景(CCScene) 类结构: CCScene主要有以下两个函数: bool  init () //初始化函数 static CCScene *  node (void) //生CCScene 作为 ...

  2. cocos2d-X学习之主要类介绍:精灵角色(CCSprite)

    CCSprite是一副2D图像,CCSprite可以通过图像或者图像中的一个矩形子区域创建 如果它的父节点或者任意继承树上的节点是CCspriteBatchNode则具有下述特性: 父节点是CCSpr ...

  3. cocos2d-X学习之主要类介绍:布景:CCLayer

    类继承图:  CCLayer 是CCNode的子类 ,实现了TouchEventsDelegate接口,继承了CCNode所有的特性,并且附加了一些自己的特性,它能够接收iPhone的触摸事件,也能够 ...

  4. cocos2d-X学习之主要类介绍:动作:CCAction

    引用自:http://www.cnblogs.com/lhming/archive/2012/07/01/2572238.html 类继承图: 主要函数: virtual CCObject *  co ...

  5. cocos2d-X学习之主要类介绍:摄像机(CCCamera)

    在cocos2d-x中,每个节点(CCNode)都需要用到,即当节点发生旋转.缩放和位置变化等时,都需要覆盖CCCamera,然后这个节点通过CCCamera重新渲染. 类结构: 其主要函数如下: c ...

  6. Unity3D核心类介绍

    脚本介绍与Unity核心类介绍 -------------------------------------------------------------------------------- 脚本介 ...

  7. Typescript 学习笔记一:介绍、安装、编译

    前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...

  8. 使用深度学习的超分辨率介绍 An Introduction to Super Resolution using Deep Learning

    使用深度学习的超分辨率介绍 关于使用深度学习进行超分辨率的各种组件,损失函数和度量的详细讨论. 介绍 超分辨率是从给定的低分辨率(LR)图像恢复高分辨率(HR)图像的过程.由于较小的空间分辨率(即尺寸 ...

  9. Java语言Lang包下常用的工具类介绍_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 无论你在开发哪中 Java 应用程序,都免不了要写很多工具类/工具函数.你可知道,有很多现成的工具类可用,并且代码质量都 ...

随机推荐

  1. 表格行与行的间距设置,通过margin无效,要这么设置

    CSS border-collapse 属性设置表格的边框是否被合并为一个单一的边框 值 描述 separate 默认值.边框会被分开.不会忽略 border-spacing 和 empty-cell ...

  2. unity 已知cosA和sinA,求A

    和c++中的atan2(y,x)类似,unity中有也Mathf.Atan2(y,x).

  3. windows server 2008 桌面图标

    1.开始-->"搜索"-->"icon"-->"显示桌面通用图标"

  4. 并且需要用websocket实时接收数据 VS 组件ng2websocket的

    chart.service.ts: import { Injectable } from '@angular/core'; import { WebSocketService } from './we ...

  5. JUC组件扩展(二)-JAVA并行框架Fork/Join(一):简介和代码示例

    一.背景 虽然目前处理器核心数已经发展到很大数目,但是按任务并发处理并不能完全充分的利用处理器资源,因为一般的应用程序没有那么多的并发处理任务.基于这种现状,考虑把一个任务拆分成多个单元,每个单元分别 ...

  6. POJ 1258:Agri-Net(最小生成树&&prim)

    Agri-Net Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 38918   Accepted: 15751 Descri ...

  7. SAP 经常使用T-CODE

    Plant Maintenance (PM) IW32 - Change Plant Maintenance Order  IW33 - Display Plant Maintenance Order ...

  8. oracle中exists 和 in 的区别

    1)用IN select * from A where id in(select id from B); 以上查询使用了in语句,in()只执行一次,它查出B表中的所有id字段并缓存起来.注意,是缓存 ...

  9. maven将依赖打入jar包并制定main方法

    <build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId& ...

  10. Unix系统编程()open,read,write和lseek的综合练习

    需求:程序的第一个命令行参数为将要打开的文件名称,余下的参数则指定了文件上执行的输入输出操作.每个表示操作的参数都以一个字母开头,紧跟以相关值(中间无空格分隔). soffet:从文件开始检索到off ...