Unity-预制GUID和GetCorrespondingObjectFromOriginalSource

时间:2019-06-07 12:17:02

标签: c# unity3d guid

我当时正在考虑使用预制GUID作为字典中的键来构建池系统。我遇到的一个问题是从实例中获取“原始” GUID或预制件。

AssetDatabase.TryGetGUIDAndLocalFileIdentifier() 

向原始对象提供引用时可以很好地工作,但不能在实例上使用。

PrefabUtility.GetCorrespondingObjectFromOriginalSource() 

应返回原始的预制件,但始终返回null(除非将其传递给原始的引用,否则它将仅返回自身)。

有什么想法吗? :)

2 个答案:

答案 0 :(得分:0)

据我所记得。 PrefabUtility仅在编辑器中起作用,而不能在游戏本身中起作用。

答案 1 :(得分:0)

看一下文档:

https://docs.unity3d.com/ScriptReference/PrefabUtility.GetCorrespondingObjectFromOriginalSource.html

该方法需要一个参数才能起作用。 就像Kaffi所说的那样,它只能在编辑器中使用(PrefabUtility在UnityEditor类中)。