转载:https://blog.csdn.net/u013435551/article/details/38579747
在Cocos2d-x中,把统筹游戏大局的类抽象为导演类(Director),Director是整个cocos2d-x引擎的核心,是整个游戏的导航仪。游戏中的一些常用操作就是由Director来控制的,比如OpenGL ES的初始化,场景的转换,游戏暂停继续的控制,世界坐标和GL坐标之间的切换,对节点的控制等,还有一些游戏数据的保存调用,屏幕尺寸的获取等都要由Director类来管理控制的。
因为Director是游戏项目的总导演,会经常调用进行一些控制,所以该Director利用了单件设计模式,也就是整个游戏里只有一个导演类。用getInstance() 方法取得Director的实例。
Tips:在cocos2d-x2.x的版本中使用sharedDirector()方法来获取导演类对象,而在3.x的版本中使用getInstance()来获取,不过sharedDirector()也可以使用。
Director类的继承关系如下:
DisplayLinkDirector继承CCDirector,是一个可以自动刷新的导演类。它支持60/1、1/30和1/15三种动画间隔(帧间隔)。
Director类的主要公共函数如下:
函数名
返回类型
描述
getRunningScene
场景类
获取当前正在运行的场景
getAnimationInterval
浮点型
获取每帧的时间
setAnimationInterval
浮点型
设置每帧的时间
isDisplayStats
布尔型
返回是否在屏幕左下角显示每帧的时间
setDisplayStats
无
设置是否在屏幕左下角显示每帧的时间
getSecondsPerFrame
浮点型
获取每帧的时间(单位为秒)
getOpenGLView
GL视图
获取绘制所有对象的OpenGL视图
setOpenGLView
无
设置绘制所有对象的OpenGL视图
isPaused
布尔型
导演类对象是否暂停
getTotalFrames
整型
获取从导演类开始运行的帧数
getProjection
投影类
获取OpenGL投影
setProjection
无
设置OpenGL投影
setViewport
无
设置OpenGL接口
isSendCleanupToScene
布尔型
切换的场景是否接收清除信息
getNotificationNode
节点类
获取一个在主场景遍历后遍历的节点对象
setNotificationNode
无
设置一个在主场景遍历后遍历的节点对象
getWinSize
尺寸
获取屏幕大小(单位为点)
getWinSizeInPixels
尺寸
获取像素级的屏幕大小(单位为像素)
getVisibleSize
尺寸
获取可见屏幕大小
getVisibleOrigin
矢量
获取可见屏幕的方向
convertToGL
矢量
转化为OpenGL坐标系
convertToUI
矢量
转化为UI坐标系
runWithScene
无
运行当前场景
pushScene
无
挂起当前场景,压入栈中
popScene
无
从栈中弹出场景
popToRootScene
无
从栈中弹出所有场景直到根场景
popToSceneStackLevel
无
从栈中弹出所有场景直到某个等级
(等级为0为导演,等级为1为根场景)
replaceScene
无
替换当前场景
end
无
结束游戏
pause
无
暂停游戏
resume
无
恢复游戏
stopAnimation
无
停止动画
startAnimation
无
开始动画
drawScene
无
绘制场景
purgeCachedData
无
移除所有缓存数据
setDefaultValues
无
基于配置信息设置默认值
setGLDefaultValues
无
设置OpenGL默认值
setAlphaBlending
无
设置OpenGL是否使用alpha通道
setDepthTest
无
设置是否测试OpenGL深度
setContentScaleFactor
无
设置表面像素大小(不同于屏幕大小)
getContentScaleFactor
浮点型
获取表面像素大小
getScheduler
调度类
获取时间调度对象
setScheduler
无
设置时间调度对象
getActionManager
动作管理类
获取动作管理对象
setActionManager
无
设置动作管理对象
getEventDispatcher
事件调度类
获取事件调度对象
setEventDispatcher
无
设置事件调度对象
getRenderer
渲染器
返回渲染器
getDeltaTime
浮点型
返回控制台
getFrameRate
浮点型
获取帧率
---------------------
作者:倾城_之泪
来源:CSDN
原文:https://blog.csdn.net/u013435551/article/details/38579747
版权声明:本文为博主原创文章,转载请附上博文链接!