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

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

发布时间:2020-12-14 17:06:10 所属栏目:百科 来源:网络整理
导读:本节课我学习了如何创建一个场景。本节课算真正意义上理解了 src 文件夹的真面目 ~ 。让我们一起来新建一个场景吧! 首先要搞清楚进入场景的入口在哪里?在 main.js 这个文件中。有一个函数名为 cc.game.onStart 。这个 function 中: cc.view.setDesignReso

本节课我学习了如何创建一个场景。本节课算真正意义上理解了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/

(编辑:李大同)

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

    推荐文章
      热点阅读