一、什么是组建化开发
1、对于引擎而言,它是一个一个的“功能组件”,哪个组件能完成什么功能,就把它进行实例化,实例化后,加到节点上(角色),帮助角色来完成对应的功能;
2,节点:(人),组件实例的载体;
3、内裤:组件类
4、一条内裤(new 一个组件类的实例):组件类的一个类的实例
组件实例加到节点(人 + 一条内裤 )= 文明人
5、每个节点:节点+属性----组件实例+属性实例,添加属性的按钮
6、系统为我们分类好了各种可用的组件---->系统开发好了
二、组建类的开发步骤
1、新建一个类---->编辑器---->组建类---->识别到组建---->用户脚本分类
a、注意:英文or英文缩写
b、自动生成的继承cc.Component的类,自动找到它。
2、new组件类的实例---->节点上;
a、直接方式->“添加组件”-按钮>添加实例到组建
b、代码:addComponent来添加组件到节点上
3、节点上有了组件实例,在运行的时候,引擎会调用一些函数入口,有了入口,就可以插入代码
a、开始之间,引擎会调用组件实例.star
b、游戏运行每帧进行刷新,调用.update(dt),dt参数非常重要,是当前updata与上次updata的时间间隔
c、问题1:引擎是怎么找到组件实例的:装载场景——>节点——>组件实例
问题2:什么是每次刷新,游戏引擎没个一段时间刷新一下画面,时间间隔非常短
4、组件实例,可以定义属性绑定到编辑器
1,新建js文件,双击打开console.log()常用的手段,可以打印任何变量的值

//定义了一个类,返回一个构造函数
// cc.Component:定义了引擎组件类的基类
cc.Class({
//继承cc.Component,
extends: cc.Component,
properties: {
},
// LIFE-CYCLE CALLBACKS:
onLoad () {
//打印hello world
console.log("hello world")
},
start () {
},
update (dt) {},
});
A、cc.Component:自动继承,此时,我们在编辑器就可以装载脚本了,如果没有继承,就无法识别用户脚本组件
image.png
B、把类添加到节点上
image.png
好处,组件开发完成以后,所有的节点都可以使用
网友评论