Unity, динамический инспектор
@nrjwolf_devНавигация
Уроки, трюки по Unity
- Динамический инспектор
- AssetBundles, подгрузка контента
- Unity, разрабатываем свой компонент
- Unity — Динамическое освещение в 2D
- Unity и телеграм
- Unity — автогенерация Enum
Стартуем
Сегодня я дам вам очень крутой скрипт, который позволит навести порядок в свойствах класса в инспекторе.
Задумка состоит в том, что в отдельных ситуациях мы используем только часть переменных, соответсвенно удобнее скрыть те, что не нужны нам в определенных условиях. Особенно, полезно, если ваш проект потому будет настраивать, скажем, геймдизайнер.
Оригинальный скрипт лежит тут, я лишь отыскал решение, слегка доработал ( встроил enum ) и опубликовал, чтобы и вы могли воспользоваться этой бомбой.
Настройка
Для работы нам нужно загрузить в проект два скрипта, первый будет постоянно работать в редакторе и заниматься отрисовкой, поэтому он должен лежать в папке Editor ( в любом месте вашего проекта ), второй класс отвечает за атрибуты, которые мы будем использовать для условий скрытия.
Скрипт отрисовки ( кладем в Editor, создаем папку, если ее нет )
Использование
Здесь начинается самое интересное. Давайте для начала повторим трюк, который мы видели на гифке в начале статьи. Создаем пустой класс, вешаем его на любой объект на сцене и пишем код :
По непонятным мне причинам, скрыть просто List не выходит, поэтому создаем сериализованный класс и в нем добавляем лист
Мы передаем три параметра :
- Имя переменной
- False - деактивируем, True - скрываем
- Инверсия значений
Теперь рассмотрим еще некоторые варианты использования.
Код :
И наконец мое любимое использование с помощью enum
Код:
Можно поставить инверсию для enum
На этом все. Вы также, можете дополнить нужные вам функции, но придется немного разобраться в этих двух скриптах.
Если вам понравился урок, вы можете поддержать меня рублем через написанного нами донат бота, а также подписавшись на мой канал. Любое из этих действий ускорит выход новых уроков и поднимет мне настроение :)