Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Скриптовые Кисти

Создание кистей с поддержкой сценариев

Создайте новый класс, наследуемый от GridBrushBase (или любых полезных подклассов GridBrushBase, например GridBrush). Переопределите все необходимые методы для вашего нового класса Brush. Ниже приведены обычные методы, которые вы переопределяете:

  • Paint позволяет кисти добавлять элементы в целевую сетку
  • Erase позволяет кисти удалять элементы из целевой сетки
  • FloodFill позволяет кисти заполнять элементы целевой сетки
  • Поворот поворачивает элементы, установленные в кисти.
  • Flip переворачивает элементы, установленные в Brush.

Создайте экземпляры нового класса с помощью ScriptableObject.CreateInstance<(Ваш класс кисти>(). Вы можете преобразовать этот новый экземпляр в актив в редакторе, чтобы использовать многократно вызывая AssetDatabase.CreateAsset().

Вы также можете создать собственный редактор для своей кисти. Это работает так же, как пользовательские редакторы для объектов, поддерживающих сценарии. Ниже перечислены основные методы, которые вы хотели бы переопределить при создании пользовательского редактора:

  • Вы можете переопределить OnPaintInspectorGUI, чтобы иметь инспекторокно Unity, которое отображает информацию о текущем выбранном игровом объекте, активе или настройках проекта, позволяя вам просматривать и редактировать значения. Дополнительная информация
    См. Словарь
    отображается на палитре, когда выбрана кисть, чтобы предоставить дополнительные поведение при рисовании.
  • Вы также можете переопределить OnPaintSceneGUI, чтобы добавить дополнительное поведение при рисовании в SceneView.
  • Вы также можете переопределить validTargets, чтобы получить собственный список целей, с которыми может взаимодействовать кисть. Этот список целей отображается в виде раскрывающегося списка в окне палитры.

При создании Scriptable Brush отображается в раскрывающемся списке кистей в окне палитры. По умолчанию экземпляр скрипта Scriptable Brush создается и сохраняется в папке Library вашего проекта. Любые изменения свойств кисти сохраняются в этом экземпляре. Если вы хотите иметь несколько копий этой кисти с разными свойствами, вы можете создать экземпляр кисти как активы в своем проекте. Эти ресурсы кисти перечислены отдельно в раскрывающемся списке «Кисть».

Вы можете добавить атрибут CustomGridBrush в класс Scriptable Brush. Это позволяет настроить поведение кисти в окне палитры. Атрибут CustomGridBrush имеет следующие свойства:

  • HideAssetInstances — если для этого параметра установлено значение true, все копии созданных ресурсов кисти будут скрыты в окне палитры. Установите этот параметр, если вы хотите, чтобы экземпляр по умолчанию отображался только в раскрывающемся списке «Кисть» в окне «Палитра».
  • HideDefaultInstances — если установить для этого параметра значение true, экземпляр кисти по умолчанию будет скрыт в окне палитры. Установите этот параметр, если хотите, чтобы в раскрывающемся списке «Кисть» окна «Палитра» отображались только созданные объекты.
  • DefaultBrush — если для этого параметра установлено значение true, экземпляр кисти по умолчанию устанавливается как кисть по умолчанию в проекте. Это делает эту кисть выбранной по умолчанию кистью при запуске проекта. Установите только одну кисть с поддержкой сценариев в качестве кисти по умолчанию!
  • DefaultName — при установке этого параметра в раскрывающемся списке "Кисть" используется это имя в качестве имени кисти вместо имени класса кисти.

Не забудьте сохранить свой проект, чтобы убедиться, что ваши новые ресурсы кисти сохранены!

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3