AssetBundle不会在子级中加载序列化值

时间:2017-04-25 08:55:32

标签: unity3d serialization assetbundle

第一次使用Asset Bundles时,我似乎无法让它们正常工作。

我有一个简单的层次结构的预制件 - 父母的MonoBehaviour和一些有自己的MonoBehaviours的孩子。所有MonoBehaviors都具有[SerializeField]属性,并在预制件中保存了非默认值。

我已经使用BuildPipeline.BuildAssetBundles将此预制件添加到资产包中,这似乎工作正常,但是,在运行时加载资源时,只有父MonoBehaviour将其字段反序列化正确,并且所有孩子都获得默认值。对其他GameObjects的引用工作正常,但原始数据被重置(或者第一次可能没有正确保存)。

我正在加载资产包,如下所示:

 var assetBundle = AssetBundle.LoadFromFile("Assets/AssetBundles/bundle");
 var asset = assetBundle.LoadAsset<GameObject>("Name");
 Instantiate(asset);

为什么这不能正确反序列化?

谢谢!

0 个答案:

没有答案