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

Введение в префабы

Вы можете использовать префабы для повторного использования GameObject конфигураций в нескольких местах в сцене или в различных сценах в вашем проекте. префаб система хранит все копии GameObject в синхронизации, так что, когда вы делаете изменения в префаб ассет, Unity обновляет все экземпляры префаб автоматически. Это позволяет вам обновить несколько GameObjects без необходимости редактировать каждую копию отдельно.

Выбор префабы в окне Project.
Выбор префабы в окне Project.

Общие виды использования префабы включают:

  • Экологические ассеты: Например, определенный тип дерева используется несколько раз на уровне.
  • Неигровые персонажи (NPCs): Например, робот, который появляется в нескольких уровнях, с различиями (используя переопределения), такими как скорость движения или звук.
  • Снаряды: Например, пушка пиратского корабля создает пушечный снаряд префаб каждый раз, когда она стреляет.
  • Главный игровой персонаж: Персонаж префаб может быть помещен в начальную точку в каждой сцене вашей игры.

Префабы также полезны, когда вы хотите создать экземпляр GameObjects во время выполнения, который не существует в вашей сцене в начале. Например, вы можете создать игровые предметы, специальные эффекты, снаряды или NPCs во время игры.

Работа с префабы

Чтобы работать с префабы, вы создаете префаб актив, который затем используется для создания экземпляров префаб в сцене.

Вы можете вложить префабы внутрь других префабы для создания сложных иерархических структур объектов, которые можно редактировать на нескольких уровнях. Однако не все экземпляры префаб должны быть одинаковыми. Вы можете переопределить параметры на отдельных экземплярах префаб, если хотите, чтобы некоторые отличались от других. Вы также можете создать варианты префаб для группирования набора переопределений в различные варианты префаб.

Если вы переопределяете префабы, полезно понимать разницу между источником префаба и его исходным источником — это поможет определить, какие части префаба переопределены:

  • Источник: Ближайший ассет префаб в цепи наследования, определяющей объект.
  • Первоначальный источник: Корневой ресурс префаб, который изначально ввел объект.

Например, если вы создаете ресурс префаб с именем Light и используете его в сцене, соответствующие источники будут следующими:

Префаб тип Источник Источник
Префаб пример Первоначальный ассет Light префаб. Первоначальный ассет Light префаб.
Префаб вариант Вариант ассета Light префаб. Первоначальный ассет Light префаб.
Вложенные префаб Вложенный ассет Light префаб. Вложенный ассет Light префаб.

Вы можете использовать методы PrefabUtility.GetCorrespondingObjectFromSource для получения источника префаб и GetCorrespondingObjectFromOriginalSource для получения первоначального источника префаб.

Префаб Inspector предварительный просмотр

Когда вы выбираете префаб, его окно Inspector содержит панель Предварительного просмотра ассета, которая отображает предварительный просмотр префаб. Если префаб меньше 8 MB, предварительный просмотр интерактивен, и вы можете поворачивать префаб в панели.

Если префаб больше 8 МБ, в области Asset Preview по умолчанию отображается статичное изображение. Чтобы посмотреть интерактивный предпросмотр таких префабов, щёлкните в любом месте панели Asset Preview.

Дополнительные ресурсы