instanceRoot | 要解包的预制体实例的根。 |
unpackMode | 是要解包最外层的根,还是全部解包。 |
action | 要用于此操作的交互模式。 |
解包给定的预制体实例,使其被预制体资源的内容替换,同时保留所有重写值。
给定的对象必须是预制体实例的根。
预制体资源的内容是您在预制体模式下打开它时看到的对象。使用 OutermostRoot 的 PrefabUnpackMode 进行解包会用该内容替换预制体实例。使用 Completely 的 PrefabUnpackMode 进行解包还将解包解包内容中包含的任何预制体实例,因此最终结果将仅仅是常规 GameObject,而不是任何预制体实例。
常规预制体或模型预制体的内容在根部始终有一个常规 GameObject,因此解包其中任何一个都会在预制体实例之前的根部留下一个常规 GameObject。
预制体变体的的内容在根部有一个基本预制体的实例,因此使用 OutermostRoot 的 PrefabUnpackMode 来解包预制体变体,就会在预制体变体实例之前的根部留下一个基本预制体的实例。
如果给定的对象不是预制体实例的根,或者它属于预制体资源,则解包会引发 ArgumentException。这不包括在预制体模式下打开的预制体内容。
InteractionMode 确定此操作是否应该可以撤消。