Редактор Unity конфликтует с префабами - PullRequest
0 голосов
/ 24 сентября 2019

Итак, я работаю над этой гексагональной сеткой для зданий в Unity.Я сделал 2d логический массив, чтобы указать, какую область сетки будет занимать здание.Я сделал специальный редактор, чтобы я мог его редактировать.Все работает отлично, пока я не установлю его на сборный.Тогда сетка, которая устанавливает область, просто сбрасывается.Есть ли способ, как я могу решить эту проблему?

PS Странно, когда я устанавливаю ползунок в том же сценарии.У Unity не было проблем с запоминанием данных слайдера.Но изменение его в префабе вызвало его сброс

Я использую Unity версии 2018.3.0f2

1 Ответ

0 голосов
/ 24 сентября 2019

Пользовательские скрипты редактора имеют привычку терять все свои данные при воспроизведении, создании экземпляров или сборке.Вы можете сохранить данные после редактирования и десериализовать их обратно в интерфейс после просмотра.Намного проще использовать пользовательские классы [system.serializable] с [serializeField] в объявлении.Список классов buildingRows, состоящий из списка классов зданий, подойдет в вашем случае.Это выглядит не так красиво, как хотелось бы.

В качестве обходного пути можно использовать поле ввода строки текста [mutiline] в инспекторе.здания могут быть, например, символом «о» или «х».При разбиении на новые строки это по сути двумерный массив символов.Как это:

o o o o x o o o o o 
o x o o x x o o o x 
o o o o o x o x x x 
o o o x o o o o o o 
o o o x o o o x o o 
o o o x o o o x o o 
o o o x o o o x o o 
x x x x o o o x o o 
x x x o o o o x o o 
o o o o o o o o o o 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...