妈妈的英文译语怎么说-牛津英汉词典下载
2023年4月4日发(作者:literally)
详解cocoscreater预制体prefab
⽬录
预制体prefab
怎么创建预制体
预制体的作⽤
1.批量明月入君怀 一度君华 创建相同类型的节点
2.提前制作⼀些特定时机才需要展⽰出来的节点
预制体prefab
什么是预制体,字⾯意思,还未使⽤前预先制作好的节点资源,属性等同于普通节点,可以看做⼀个预先制作还没展⽰出来的普通的节点
怎么创建预制体
1.在层级管理器处先创建普通的节点,然后把这个节点拖拽到资源管理器的assets⽂件夹下,出于⽅便管理会统⼀建⽴⼀个Prefab⽂件夹下统⼀存放
预制体
双击预制体节点可以看到它呈现蓝⾊,这时候就可以删除还留在场景场景⾥的节点,需要使⽤该节点时,通过预杂然而前陈者的前 制体创建
这时候可以看到属性检查器⾥的属性,和普通节点⼀致
预制体的作⽤
1.批量创建相同类型的节点
本质上来说就是使⽤预制体创建⼀个模板,然后通过复制这个预制体模板批量创建
第⼀步:批量创建节点放⼊对象池
@property()
prefab:=null;
//在属性管理器上声明⼀个预制体类型,⽤于在属性管理器⾥挂载定义好的预制体
@property(ol)
nodePools:ol=null;
//声明⼀个对象池⽤于存放通过预制体创建对象,⼀次性使⽤预制体创建⾜够⽤的相同类型节点,然后放⼊对象池,需要使⽤时拿出来,不需要时放回,避免长时间⼤量创建和销毁节点
for(leti:number=0;i<100;i++){
//创建100个节点
letnode:=tiate();
(node);
//将每个节点放⼊对象池
}
第⼆步:需要使⽤时直接拿出使⽤即可
letnode:=null;
//判断对象池内是否有有闲置对象
if(()>0){
//使⽤get⽅法获取闲置对象,这时候把存放批量创建节点的对象池nodePools当作参数传⼊get⾥,之后可以在预制体绑定的脚本内(假设是),进⾏放回对象池操作
node=(ols);
}else{
//如果没有闲置对象就通过预制体创建
node=tiate();
}
//挂载到⽗节点上,等同于⼿动拖拽挂载
ld(node);
第三步:使⽤完之后返还节点
//假设这是上⾯提到的预制体脚本脚本
nodePools:ol=null;
//上⾯通过洛阳牡丹 node=(ols);取出对象池内的节点之后,在预制体的脚本内先定义⼀个对象池接收上⾯通过get传⼊的对象池
/*这样当使⽤()获取节点后,
就会调⽤预制体脚本⾥的reuse⽅玉兰花树图片 法,完成点击事件的注册。
另外()可以传⼊任意数量类型的参数,这些参数会被原样传递给reus改善的拼音 e⽅法*/
//所有我们要在实现⼀个reuse系统回调⽅法
reuse(EnemyPools:ol){
//获取到get中传⼊的管理类实例
ools=EnemyPools;
}
//写⼀个回收对象的函数
hit(){
//判断对象池是否存在
if(ols){
//存在放回当前节点
()小石潭记古今异义 ;
}else{
//否则直接销毁节点
y();
}
}
2.提前制作⼀些特定时机才需要展⽰出来的节点
⽐如提⽰框之类的
//创建⼀个预制体⽤于属性检查器⾥挂载定义好的预制体
@property()
testPrefab:=null;
//需要展⽰这个节点的时候直接像上⾯⼀样复制通预制体创建
letnode=tiate(efab);
//挂载到⽗节点上
ld(node);
上⾯都是使⽤挂载,下⾯使⽤⼀种动态加载,这样可以不通过@property()这样的挂载⽅式,就能加载出
//因为下⾯的回调函数⽆法使⽤this,所以要定义⼀个变量传⼊this
letm_this=this;
/*使⽤s动态加载Prefab,先在在assets⽂件夹下创建⼀个resources⽂件夹,然后把预制体资源放到下⾯
第⼀个参数是resources下⾯预制体的绝对路径,这样预制体就会被获取到第⼆个function类型参数的prefab参数⾥*/
[cocos⽂档官⽹](/creator/manual/zh/scripting/?h=assets)
s(\"assets/OptionBox\",function(err,prefab){
if(!prefab){
(\"预制体为空\");价值的近义词
}
varnewNode=tiate(prefab);
if(!newNode){
(\"节点为空\");
}
//添加为当前节点的⼦节点
m_ld(newNode);
以上就是两种常规使⽤预制体的⽅案,例如批量创建敌⼈,⼦弹使⽤的是第⼀种,第⼆种在有反复使⽤的场景,或者特定情况触发的提⽰框也可以做
成预制体
以上就是详解cocoscreater预制体prefab的详细内容,更多关于cocoscreaterprefab的资料请关注其它相关⽂章!
更多推荐
prefab是什么意思fab在线翻译读音例句
发布评论