Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

PrefabUtility.InstantiatePrefab

Объявление

public static Object InstantiatePrefab(Object assetComponentOrGameObject);

public static Object InstantiatePrefab(Object assetComponentOrGameObject, SceneManagement.Scene destinationScene);

Параметры

target Сборный актив для создания экземпляра.
destinationScene Сцена для создания префаба в.

Возвращает

Object GameObject в корне префаба.

Описание

Создает экземпляр данного префаба в заданной сцене.

Это похоже на Instantiate, но создает соединение Prefab с Prefab. Если вы не укажете дескриптор сцены, префаб создается в активной сцене.

Примечание. Не следует создавать префабы из OnValidate() или Awake(). метод. Это связано с тем, что порядок, в котором GameObjects пробуждаются, не является детерминированным и, следовательно, может привести к неожиданному поведению. Если вы попробуете это сделать, Unity выдаст предупреждение «SendMessage не может быть вызвана во время Awake, CheckConsistency или OnValidate».

using UnityEngine; using UnityEditor; public class Example { [MenuItem("Examples/Instantiate Selected")] static void InstantiatePrefab() { Selection.activeObject = PrefabUtility.InstantiatePrefab(Selection.activeObject as GameObject); } [MenuItem("Examples/Instantiate Selected", true)] static bool ValidateInstantiatePrefab() { GameObject go = Selection.activeObject as GameObject; if (go == null) return false; return PrefabUtility.IsPartOfPrefabAsset(go); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3