大家好,欢迎来到IT知识分享网。
Q: 什么是节点?
A:一言蔽之曰“cc.Node”
Q:什么是组件?
A:一言蔽之曰“cc.Component”
// 在我这个萌新看来,节点就是层级管理器中的东西,组件就是属性检查器里的东西。我暂时这样去理解。
Q:生命周期回调函数的套路?
A:
大致流程:onLoad >> onEnable >> start >> upDate >> onDisable >> onDistroy
汤师爷翻译:
on: 开始
load: 加载
enable: 激活
disable: 使…失去
distroy: 毁灭
onLoad():
节点首次激活时(比如所在的场景被载入);
节点active属性从false变为true时
初始化那些不常改变的属性
// 比如《摘星星》里地平面实际高度groundY
onEnable()
组件的enabled属性从false变为true时
所在节点的active属性从false变为true时
节点第一次被创建且enabled属性为true时,在onLoad()之后、start()之前
编写中途节点或组件的状态改变时的处理逻辑
start()
只在组件第一次激活前,即第一次upDate()之前触发一次
初始化一些经常变化的属性(例如计时器)
upDate(dt):
每帧更新,用来处理逻辑
dt = 上一帧到当前帧的时间间隔(ms||毫秒)
onDisable():
组件的enabled属性从true变为false时
所在节点的active属性从true变为false时
可以发现它和onEnable()是一对儿的
onDistroy():
组件或节点调用了 destroy()时激活,并在当前帧结束时统一回收组件
场景切换或销毁时
同时声明了onLoad()和onDistroy()时,它们总是成对被调用。
意思是从组件初始 化到销毁这个过程里,它们要么都被调用,要么都不会被调用。
虽然都是成对儿的生命周期回调方法,这一点可是不同于onEnable()和onDisable()。
主要为了资源回收
以上。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/28242.html