У меня была сцена с картой (некоторые здания и дороги) и Baked Navmesh, затем я начал дублировать ту же сцену, модифицируя некоторые объекты внутри (а не карту или мир), поэтому все Сцены каким-то образом использовали один и тот же Navmesh, затем я случайно удалил Navmesh. Теперь единственный способ, которым я, похоже, найти, - создать новый выпеченный Navmesh для каждой сцены, который слишком сильно увеличит размер сборки !, Как я могу повторно передать тот же испеченный Navmesh со всеми Сценами, поскольку у всех есть одна и та же карта внутри? Я использую последний Unity3D.Поделиться такой же Navmesh с дублированными сценами
1
A
ответ
0
Перед началом работы:, если у вас есть много активов в изменяющемся сериализацию Force Текст может занять много времени вашего проекта. Поэтому вы можете скопировать целевые сцены в новый проект, выполнить указанные ниже действия и вставить их обратно. :)
Там нет никакого способа сделать это из редактора Unity, но есть обходной путь:
- Перейти к Edit> Настройки проекта> Редактор и изменить Asset Сериализация в Force Text (по умолчанию Mixed) - это гарантирует, что все активы, в том числе файлов сцена единства сохраняется в виде текстовых документов
- Теперь откройте файл сцены (один с запеченным NavMesh) в любом текстовом редакторе
- CMD + F или CTRL + F, чтобы сфокусироваться на строке поиска и введите «NavMeshSettings». В NavMeshSettings последнее сообщение должно быть m_NavMeshData: {fileID: 1234 // и еще несколько вещей здесь} - это ссылка на ваш запеченный файл активов NavMesh. Скопируйте всю строку
- Теперь откройте вторую сцену, к которой вы хотите поделиться NavMesh (снова открыть в текстовом редакторе). Найдите точно такую же строку, начиная с m_NavMeshData, удалите ее и пройдите по линии от предыдущей сцены.
- BOOM!
Редактировать/Подсказка: Вы можете изменить сериализацию Mixed еще раз, если вы хотите. Единственный недостаток текстовой сериализации - большие файлы. Он в основном используется для контроля версий и слияния, а также сцены и прочее ...
Я попробую это завтра и расскажу вам результаты, это то, что мы можем назвать гениальным ответом !! –
Я попробовал это сейчас, занял всего 5 минут с упомянутым вами вниманием, еще раз спасибо за этот замечательный хак! –
ОК спасибо, я переместил этот совет в начало ответа –