首页 > 代码库 > Cocos2d-x 3.0final 终结者系列教程06-Director和场景跳转

Cocos2d-x 3.0final 终结者系列教程06-Director和场景跳转

这些天互联网大事不少呀

1。逻辑思维分家(所谓合久必分,分久必合,实属正常,切行切珍惜吧)

2。锤子手机开卖  (不管你买没买,反正我没买,作为多年Android开发的我深知说的亮点其实在我看来都是没用的)

3。京东上市        (一直亏损的企业,在国内上市真的不可能,不过公司亏损不表示公司没有价值,这就是潜力股,奉劝各位找对象的多关注些潜力股)

4。聚美优品上市  (话说欧哥虽是官二代,但互联网电商公司上市跟这确实没啥关系,有本事你是官二代也做个上市公司试试呀,

                                     徐小平老师这次算牛了,投资翻了400倍,所以呀,富二代有钱的话多投资移动互联网,比去澳门赢的多多了)

5。沈大海推出自学Cocos2d-x游戏开发视频(这才跟我们广大屌丝青年有关,赶快跟沈老师学游戏开发,走上高薪就业之路吧)

-------------------------------------今天讲讲导演和场景-------------------------------------------

上回书说道,系统平台的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

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

------------------------------------------------------

在执行完场景切花之后,导演类会自动将释放之前的场景中所有节点的内存。

那么是么是场景呢?(其实它是一种绘图节点Node,什么是绘图节点Node呢?下次再介绍)