加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2d-x 3.0-Director和场景跳转

发布时间:2020-12-14 20:26:26 所属栏目:百科 来源:网络整理
导读:系统平台的main创建了窗口,启动了Application,回调了AppDelegate中的applicationDidFinishLaunching 在该方法中 创建了第一个场景对象 auto scene=HelloWorldScene::createScene(); 通过Director::getInstance()-runWithScene(scene); 之后就开始了 Directo
系统平台的main创建了窗口,启动了Application,回调了AppDelegate中的applicationDidFinishLaunching

在该方法中

创建了第一个场景对象

auto scene=HelloWorldScene::createScene();

通过Director::getInstance()->runWithScene(scene);

之后就开始了

Director::mainLoop();

开始了主线程循环,每秒绘图60次,每次绘制的就是当前场景,如果要修改屏幕绘图内容可以:

1。修改主场景的图层节点属性(下一篇详细介绍)

2。切换场景

如果要切换场景需要使用Director导演类,在Cocos2d-x中Application和Director都是单例模式,通过类名::getInstance()方法来得到实例,Director主要完成以下工作:

1。访问和改变场景

2。访问配置信息

3 . 应用核心loop

4. 绑定和访问窗口

5。处理自动回收对象

6。处理事件消息转发 暂停 恢复和结束游戏

7。初始化各种管理器

(是不是导演很忙呀)

如何在Cocos2d-x中切换场景呢?

-(void) runWithScene: (Scene*)scene

将场景对象压入栈中,并激活(此时不能有已经激活的场景,因此该方法常用于刚进游戏时)。

-(void) replaceScene: (Scene*)scene

替换当前激活的场景,同时将旧场景从堆栈中删除,新场景压入堆栈。

-(void) pushScene: (Scene*) scene

添加新的场景进栈,并将其激活。

-(void) popScene

当前激活的场景出栈,激活上一个场景。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读