Наследование, дубликат и оверрайд
В Workbench есть три способа создать свой вариант префаба: наследование, дубликат и оверрайд. Разберём, чем они отличаются и как изменения одного префаба могут повлиять на другие.
Наследование — общая основа
Заголовок раздела «Наследование — общая основа»Допустим, стрелку и медику нужна одинаковая форма, но разное снаряжение. Создайте общий префаб и задайте в нём форму. Затем с помощью Inherit in создайте на его основе префабы стрелка и медика. Общий префаб называют родителем, а созданные на его основе — наследниками.
- Общий префаб: куртка, брюки, ботинки
- Стрелок: общая форма + своё оружие и патроны
- Медик: общая форма + своё оружие и медикаменты
Если заменить куртку в общем префабе, она изменится и у стрелка, и у медика. Но если в префабе медика указать другую куртку, он будет использовать её. Последующие изменения куртки в общем префабе на медика уже не повлияют.
Дубликат — копия для отдельных изменений
Заголовок раздела «Дубликат — копия для отдельных изменений»Команда Duplicate to создаёт копию префаба. Например, можно скопировать готового стрелка и заменить оружие в копии. Исходный префаб стрелка при этом не изменится.
Копия сохраняет связь с родителем исходного префаба. Если стрелок наследовал форму из общего префаба, его копия тоже будет наследовать форму оттуда.
Если настройки префаба менять не нужно, дубликат не понадобится. Например, готовую панаму из игры можно сразу назначить персонажу — копия ради нового имени файла ничего не даст.
Если нескольким персонажам нужна одинаковая форма, удобнее использовать наследование. Тогда форму можно менять в общем префабе, а не в каждой копии отдельно.
Оверрайд — изменение исходного префаба
Заголовок раздела «Оверрайд — изменение исходного префаба»Команда Override in позволяет изменить игровой префаб через свой аддон. Например, если заменить таким способом куртку у игрового стрелка, все персонажи с этим префабом получат новую куртку. Это изменение действует, пока ваш аддон подключён.
Если новый вариант стрелка нужен только для вашей миссии, создайте наследника или дубликат. Оверрайд изменит префаб везде, где он используется.