Unity小知识点学习
Unity 中的原始预制体 和 预制体变体 的区别和作用
在Unity中操作预制体的时候会出现下面这种情况:
有一个Assets工程中的预制体A,把预制体A拖到场景中之后,这个游戏对象还是蓝色形状的预制体A没错
但是当我把这个预制体A再拖拽到工程中想让他当做预制体B的时候,Unity会弹出一个窗口让我们选择
如下所示:
这里解释一下选择这两个有什么作用和区别
选择Original(原始预制体):这个游戏对象会成为一个新的预制体B,与原来的预制体A就断绝关系了!
选择Prefab Variant(预制体变体):这个游戏对象也会变成一个预制体A1,不同的是这个预制体A1就相当于变成了原来预制体A的子类
每当原来的预制体A发生变化的时候,这个预制体A1会跟随着进行变化!
而且当我们修改预制体A1的属性的时候,原来的预制体A并不会发生了变化。
就跟一个继承父类的子类一样,修改父类的公共属性的时候,子类也会跟随着变化,但是在子类做修改的时候,父类并不受影响!
平时我们用到比较多的就是选择第一种即可,此时这个预制体A就会变成一个新的预制体B,我们随意修改即可
当我们希望这个预制体A1会跟随原来的预制体A发生变化的时候则选择第二种
一般是原来的预制体A被充当做另一个游戏对象的子类 被重新组装成了一个新的预制体AA,同时我们又希望这个预制体AA保持与预制体A一个同步更新的关系时,才会选择这个预制体变体