您的位置:首页 > 移动开发 > Cocos引擎

CVP认证学习笔记--李天宇004实现自定义场景

2016-06-24 23:20 302 查看
 本节课我学习了如何创建一个场景。本节课算真正意义上理解了src文件夹的真面目~。让我们一起来新建一个场景吧!

 首先要搞清楚进入场景的入口在哪里?在main.js这个文件中。有一个函数名为cc.game.onStart。这个function中:

cc.view.setDesignResolutionSize(800,450,cc.ResolutionPolicy.SHOW_ALL);

 上述代码是进行屏幕尺寸的设定SHOW_ALL是表示适配全屏幕。

 最为关键的一句话是cc.director.runScene(new myscene(这里是你场景的名字));当然此时我们还没有定义场景,这里只是一个入口。通过访问

http://api.cocos.com/cn/d7/df3/classcocos2d_1_1_director.html了解到场景类它是主要负责创建和处理主窗口,以及管理场景的执行。它还有很多其他的方法如:setDisplayStats(设置帧率的显示)等。

 下面我们新建一个myscene.js空文件。下面是核心代码:

 var mylayer = cc.Layer.extend({

ctor:function(){

            this._super();

            var size = cc.winSize;

            var label1 = new cc.LabelTTF("这里是游戏场景","黑体",50);

            var label2 = new cc.LabelTTF("我的名字是寒风","黑体",50);

            var bg = new cc.Sprite(res.HelloWorld_png);

            label1.setPosition(size.width / 2,50);

            label2.setPosition(size.width / 2,400);

            bg.setPosition(size.width / 2,size.height / 2);

            this.addChild(bg,0);

            this.addChild(label1,1);

            this.addChild(label2,1);

}

});

var myscene = cc.Scene.extend({

ctor:function(){

this._super();

var layer1 = new mylayer();

this.addChild(layer1);

}

});

 

  这两个函数里边都有this._super()函数。他是在调用父类的构造函数。

var layer1 = new mylayer();

this.addChild(layer1);

     这里是将mylayer进行了实例化操作得到一个对象,相信大家学习过面向对象的对这一行代码理解起来并不困难。然后将layer添加到他的父节点也就是当前场景中。如此一个场景构建完毕。

  其他的不过多阐述,这里只提跟场景有关的学习心得。

     最后附上本节课的作业链接:

http://www.cocoscvp.com/usercode/2016_04_10/eea5fc2c0ea2d7b741f2bab83554084af404af7b/

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cocos2d cocos2d-x html5