Привет!
Прошу совета у опытных камрадов.
Есть игровое поле, состоящее из одинаковых объектов - плиток, подобно стене. А-ля 2d карта из тайлов, плитки лежат в одной плоскости. Пока поле могло быть просто прямоугольной формы, все было хорошо. В скрипте, который строил поле при старте игры, в public полях лежали две переменные, число строк и число столбцов, которые задавал дизайнер. По ним и строилась прямоугольная область из плиток в Start().
Теперь дизайнер хочет, чтобы поле было не строго прямоугольным, а была возможность сделать его ступенчатым.
Одинм словом, надо предоставить редактор формы поля.
Вот тут я никак не могу подружить редактор с этим делом. По идее решил выводить сначала все плитки исходя из строк и столбцов, чтобы дать возможность удалить ненужные плитки геймдизу. Но, тут одни проблемы: вместо Start() поле пробывал строить в OnDrawGizmos(), но после запуска игры и "возврата" из неё обекты генерировались по новой, захламляя иерархию и вьюпорт.
В общем, понятно, можно делать кучу проверок в OnDrawGizmos(), чтобы не генерировать уже созданное поле при старте редактора или возврата из режима игры, и т.д. Но тут уже никакой гибкости, как поле построить заново и т.д. через OnDrawGizmos() будет бардак, и что-то мне подсказывает, что это все очень через попу и есть более здравое решение, но без совета опытных коллег не выплыву.
Что придумать, чтобы обойтись встроенными возможностями редактора Unity и не писать его отдельно?
Тем более что дальше, предвижу, дизайнер захочет менять расстояние между плитками и их масштаб, и результат видеть сразу, не запуская для этого игру.