2016-04-19 2 views
1

У меня была сцена с картой (некоторые здания и дороги) и Baked Navmesh, затем я начал дублировать ту же сцену, модифицируя некоторые объекты внутри (а не карту или мир), поэтому все Сцены каким-то образом использовали один и тот же Navmesh, затем я случайно удалил Navmesh. Теперь единственный способ, которым я, похоже, найти, - создать новый выпеченный Navmesh для каждой сцены, который слишком сильно увеличит размер сборки !, Как я могу повторно передать тот же испеченный Navmesh со всеми Сценами, поскольку у всех есть одна и та же карта внутри? Я использую последний Unity3D.Поделиться такой же Navmesh с дублированными сценами

ответ

0

Перед началом работы:, если у вас есть много активов в изменяющемся сериализацию Force Текст может занять много времени вашего проекта. Поэтому вы можете скопировать целевые сцены в новый проект, выполнить указанные ниже действия и вставить их обратно. :)

Там нет никакого способа сделать это из редактора Unity, но есть обходной путь:

  1. Перейти к Edit> Настройки проекта> Редактор и изменить Asset Сериализация в Force Text (по умолчанию Mixed) - это гарантирует, что все активы, в том числе файлов сцена единства сохраняется в виде текстовых документов
  2. Теперь откройте файл сцены (один с запеченным NavMesh) в любом текстовом редакторе
  3. CMD + F или CTRL + F, чтобы сфокусироваться на строке поиска и введите «NavMeshSettings». В NavMeshSettings последнее сообщение должно быть m_NavMeshData: {fileID: 1234 // и еще несколько вещей здесь} - это ссылка на ваш запеченный файл активов NavMesh. Скопируйте всю строку
  4. Теперь откройте вторую сцену, к которой вы хотите поделиться NavMesh (снова открыть в текстовом редакторе). Найдите точно такую ​​же строку, начиная с m_NavMeshData, удалите ее и пройдите по линии от предыдущей сцены.
  5. BOOM!

Редактировать/Подсказка: Вы можете изменить сериализацию Mixed еще раз, если вы хотите. Единственный недостаток текстовой сериализации - большие файлы. Он в основном используется для контроля версий и слияния, а также сцены и прочее ...

+0

Я попробую это завтра и расскажу вам результаты, это то, что мы можем назвать гениальным ответом !! –

+0

Я попробовал это сейчас, занял всего 5 минут с упомянутым вами вниманием, еще раз спасибо за этот замечательный хак! –

+0

ОК спасибо, я переместил этот совет в начало ответа –