User Manual

Шаблоны

Шаблоны (или префабы) позволяют ускорить вашу разработку, создавая повторно используемые объекты Entity. Вы можете разместить несколько экземпляров шаблона в вашей сцене, и если вы внесете какие-либо изменения и примените их к Asset шаблона, все экземпляры этого шаблона будут обновлены.

Создание шаблонов

Чтобы создать новый Asset шаблона, вы можете щелкнуть правой кнопкой мыши на любом объекте Entity в вашей сцене и выбрать Template → New Template. Это создаст новый Asset шаблона и добавит его в вашу текущую выбранную папку в панели Asset. Объект Entity, на который вы щелкнули, автоматически станет экземпляром этого нового Asset шаблона.

Добавление шаблонов в вашу сцену

Вы можете перетащить Asset шаблона в вашу сцену или щелкнуть правой кнопкой мыши на объекте Entity в иерархии и выбрать Template → Add Instance. Затем вы можете выбрать Asset шаблона, и это добавит экземпляр под щелкнутым объектом Entity.

Когда объект Entity является экземпляром шаблона, он будет иметь несколько отличный вид в иерархии:

Template Instance

Корневой объект Entity экземпляра шаблона и все его дочерние элементы будут иметь другой значок, показывающий, что они являются частью одного и того же шаблона.

Когда вы выбираете корень экземпляра шаблона, вы заметите следующие свойства в Entity Inspector:

Template Inspector

Обновление шаблонов

Чтобы внести изменения в Asset шаблона, сначала нужно добавить экземпляр этого шаблона в редактор. Затем вы можете изменить экземпляр по своему усмотрению и в конце применить изменения к Asset шаблона.

Переопределение шаблонов

Когда вы вносите изменения в экземпляр шаблона или его дочерние элементы, это генерирует переопределение шаблонов. Существует несколько типов переопределений:

Когда вы применяете переопределения к Asset шаблона, они перестают быть переопределениями и становятся частью Asset шаблона.

Вы можете увидеть сводку переопределений, выбрав корень экземпляра шаблона и посмотрев на Entity Inspector:

Overrides

Также обратите внимание на разный цвет метки поля, которое было переопределено. Вы также можете увидеть более подробный список всех переопределений, нажав View Diff. См. Overrides Diff View для получения дополнительной информации.

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

Override Hover

Применение переопределений

Чтобы применить переопределение, нажмите APPLY во всплывающей подсказке, которая отображается при наведении указателя мыши на переопределенное поле.

Чтобы применить несколько переопределений, выберите корень экземпляра шаблона и нажмите Apply All в Entity Inspector. Вы также можете щелкнуть правой кнопкой мыши на корне экземпляра шаблона и выбрать Template → Apply To Template.

Кроме того, вы можете открыть Override Diff View и применить переопределения оттуда.

Любые переопределения, которые вы примените к Asset шаблона, будут распространяться на другие экземпляры Asset шаблона в любой сцене, где они могут быть.

Примечание: В настоящее время вы не можете отменить действие применения переопределений к Asset шаблона.

Откат переопределений

Чтобы отменить конкретное переопределение, нажмите REVERT во всплывающей подсказке, которая отображается при наведении указателя мыши на переопределенное поле.

Чтобы отменить все переопределения, выберите корень экземпляра шаблона и нажмите Revert All в Entity Inspector.

Кроме того, вы можете открыть Override Diff View и отменить переопределения оттуда.

Более подробно о переопределениях

Когда вы создаете переопределение, свойство, которое оно переопределяет, защищается от обновлений Asset шаблона. Например, предположим, что ваш экземпляр шаблона выглядит следующим образом:

Экземпляр шаблона

Вы изменяете положение Tree1/Sphere. Это создает переопределение положения сущности Sphere. Затем вы создаете еще один экземпляр ассета шаблона и изменяете положение сферы на что-то другое. Если вы примените переопределение со второго экземпляра, то это не обновит положение первого экземпляра, так как оно переопределено и защищено. Чтобы первый экземпляр учел изменения положения сущности Sphere, сначала нужно отменить переопределение.

Создание экземпляров во время выполнения

Вы можете создавать экземпляры ассетов шаблона во время выполнения следующим образом:

var templateAsset = this.app.assets.get(templateAssetId);
var instance = templateAsset.resource.instantiate();
this.app.root.addChild(instance);

Вы также можете использовать атрибуты скриптов для передачи шаблонов Asset в ваши скрипты вместо поиска их по ID.

Когда мне нужно загружать шаблоны Asset?

Шаблоны хранят иерархию и данные Entity, аналогично сценам. Когда экземпляр шаблона добавляется на сцену в редакторе, иерархия и данные Entity включаются в данные сцены.

Во время выполнения экземпляр шаблона не связан с Asset, и вы можете уменьшить размер загрузки, не предварительно загружая/загружая Asset.

Вам нужно загружать шаблоны Asset только если вы создаете экземпляры во время выполнения.

This site is translated by the community. If you want to get involved visit this page