Unity 6.3
0 онлайн 0 гостей 3 в системе
Вход

PrefabUtility.ApplyPrefabInstances

Declaration

public static void ApplyPrefabInstances(GameObject[] instanceRoots, InteractionMode action);

Параметры

Параметр Описание
instanceRoots Корни данных экземпляров Префаб.
действия Режим взаимодействия для этого действия.

Описание

Применяет все переопределения из списка экземпляров Префаб к их Ассетам Префаб.

Этот метод позволяет применить полное изменённое состояние экземпляров Prefab к их исходным ресурсам Prefab. Сюда входят все переопределения свойств, добавленные и удалённые компоненты, а также добавленные дочерние GameObject (в том числе добавленные дочерние экземпляры Prefab).

Он соответствует действию кнопки «Apply All» в меню переопределений Редактора. Перед использованием этого метода необходимо каким-либо образом изменить существующий экземпляр Prefab: например, изменить свойства, добавить или удалить GameObject либо компоненты.

Изменения экземпляра Prefab, которые ещё не были применены, называются переопределениями экземпляра. После применения изменения становятся частью ресурса Prefab и больше не считаются переопределениями.

Если этим методом применить все изменения к ресурсу Prefab для вложенных Prefab или вариантов Prefab, изменения всегда применяются к самому внешнему Prefab. Чтобы применить изменения к внутренним Prefab, используйте другие методы, например PrefabUtility.ApplyAddedComponent, PrefabUtility.ApplyAddedGameObject, PrefabUtility.ApplyRemovedComponent, PrefabUtility.ApplyRemovedGameObject и PrefabUtility.ApplyObjectOverride.

Положение и поворот Transform корневого GameObject в экземпляре Prefab применить нельзя; это также относится к другим свойствам переопределения по умолчанию.

Подробнее см. в руководстве пользователя в разделе об изменении экземпляров Prefab и применении изменений.

Дополнительные ресурсы: PrefabUtility.ApplyPrefabInstance, PrefabUtility.ApplyAddedComponent, PrefabUtility.ApplyAddedGameObject, PrefabUtility.ApplyObjectOverride, PrefabUtility.ApplyPropertyOverride, PrefabUtility.ApplyRemovedComponent, PrefabUtility.ApplyRemovedGameObject.