Unity预制体嵌套和预制体继承(变体)
前⾔
文字的演变这⼏天看Unity⽂档查漏补缺时学习到的知识点,这⾥记录⼀下。
卓依婷新年歌曲大全准备
Unity2018.3及以上
工地安全管理制度
预制体嵌套
1.⽤法
打开预制体后将要添加的其他预制体直接拖进去即可。2018.3之前的版本是不⽀持的。
茨实
小班长>房地产市场Modified Component可以指定应⽤修改的预制体。
如果选择ApplyAll会修改外层预制体。
2.总结
预制体⾥可以嵌套其他预制体。这个很好理解,就不多废话了。
预制体变体(Variant)
1.⽤法
有两种创建⽅法。1.在Project窗⼝中的Prefab上右键,选择Create > Prefab Variant。2.将Hierarchy中的Prefab实例拖到Project窗⼝中,会弹出创建对话框,选择Prefab Variant。
成绩查
2.总结
在我理解它就相当于C#⾥的继承,被变体的预制体是基类(简称基体),预制体变体为⼦类(简称变体),变体和基体始终是有关联的,但是变体⼜不完全受基体限制。
下⾯拿⼀些实际应⽤场景来更形象的解释⽤法。⽐如说我们做⼀个卡牌游戏,卡牌可能分普通卡和稀有卡,它们之间⼤体相同但⼜有些细节不同(不考虑脚本切换内容),那么我们就可以把卡牌通⽤模板做成基体,然后创建其他变体制作不同卡牌。这样的话我们通过修改基体就能修改其他所有变体。
钱学森事迹公司⾥的项⽬也有使⽤变体功能,⽐如把⼀些ui模板作为基体,但是被修改部分不会改变。
注意
⼀般情况下变体不需要override修改基体,⽬的就是保留这种多样性,相当于⼦类的覆写。
Unpack Prefab变体会将变体变为普通预制体, Unpack Prefab嵌套预制体外围内容会解除关联但是被嵌套的预制体还是预制体。我们可以选择Unpack Prefab Completely⼀次性解除所有关联。