Unity 6.3
0 онлайн 62 гостей 3 в системе
Вход

MaterialEditor

класс в UnityEditor

Наследуется от:Editor

Описание

Редактор материалов Unity.

Расширьте этот класс, чтобы написать собственный редактор материалов. Подробнее см. в Пользовательский редактор материалов раздела бюджета ShaderLab ссылка.

Статические свойства

Свойство Описание
kMiniTextureFieldLabelIndentLevelПолезно для отступов свойств шейдера, которые нуждаются в том же отступе, что и поле мини-тексты.

Свойства

Свойство Описание
customShaderGUIВозвращает пользовательский ShaderGUI, реализованный шейдером.
isVisibleРасширяется ли текущий материал.

Открытые методы

Метод Описание
AwakeВызывается, когда Редактор просыпается.
BeginAnimatedCheckСоздает оболочку Свойства, полезную для создания работы обычных GUI контроллеров с MaterialProperty.
ColorPropertyНарисуйте поле свойства для свойства цветового шейдера.
CreatePreviewСм. Editor.CreatePreview.
DefaultPreviewGUIОбработка по умолчанию области предварительного просмотра для материалов.
DefaultPreviewSettingsGUIПанель инструментов по умолчанию для области предварительного просмотра материала.
DefaultShaderPropertyОбрабатывает UI для одного свойства шейдера, игнорируя любые пользовательские ящики.
DoubleSidedGIFieldДисплей UI для редактирования настройки двухсторонней глобальной подсветки материала. Возвращает true, если UI действительно отображается i.e. материал поддерживает настройку двухсторонней глобальной подсветки. +Дополнительные ресурсы: Material.doubleSidedGI.
EmissionEnabledPropertyЭта функция выведет UI для контроля того, включена ли эмиссия или нет на материале.
EnableInstancingFieldОтображение UI для редактирования настройки очереди рендеринга материала.
EndAnimatedCheckЗавершает оболочку свойства, начавшуюся с BeginAnimatedCheck.
FloatPropertyНарисовать поле свойства для свойства плавающего шейдера.
GetPropertyHeightРассчитать высоту, необходимую для недвижимости.
GetTexturePropertyCustomAreaВозвращает свободный прямоугольник под меткой и перед полем объекта большого пальца. Используется для свойств e.g. плитки и смещения.
HasPreviewGUIМожно ли просмотреть этот компонент в его текущем состоянии?
HelpBoxWithButtonСоздайте окно помощи с сообщением и кнопкой. Возвращает true, если кнопка была нажата.
IntegerPropertyНарисовать поле свойства для свойства целочисленного шейдера.
IsInstancingEnabledОпределяет, установлен ли флажок Включить экземпляр.
LightmapEmissionFlagsPropertyРисует UI для установки глобального флага освещения материала.
LightmapEmissionPropertyЭта функция будет рисовать UI для свойства lightmap emission. (None, Realtime, baked)Дополнительные ресурсы: MaterialLightmapFlags.
OnDisableВызывается, когда редактор отключен, если переопределить, пожалуйста, вызовите базу OnDisable(), чтобы убедиться, что инспектор материалов настроен правильно.
OnEnableВызывается при включении редактора, если переопределить, пожалуйста, вызовите базу OnEnable(), чтобы убедиться, что инспектор материалов настроен правильно.
OnInspectorGUIРеализуйте здесь специальный код MaterialEditor GUI. Если вы хотите просто расширить существующий редактор, вызовите базовый OnInspectorGUI () перед тем, как выполнить любой пользовательский код GUI.
OnPreviewGUIНастраиваемый предварительный просмотр для компонента Изображение.
PropertiesChangedКаждый раз, когда изменяется свойство материала, вызовите эту функцию. Это перестроит инспектор и проверит свойства.
PropertiesDefaultGUIОтображение свойств шейдера по умолчанию.
PropertiesGUIОтображение стандартных свойств материала. Этот метод либо отображает свойства с помощью экземпляра ShaderGUI, если он найден, либо использует PropertiesDefaultGUI.
RangePropertyНарисовать ползунок диапазона для свойства shader диапазона.
RegisterPropertyChangeUndoВызывайте это при изменении свойства материала. Это добавит отмену для действия.
RenderQueueFieldОтображение UI для редактирования настройки очереди рендеринга материала.
RequiresConstantRepaintНужно ли постоянно перерисовывать этот редактор в его текущем состоянии?
SetDefaultGUIWidthsУстановите EditorGUIUtility.fieldWidth и labelWidth на значения по умолчанию, которые использует PropertiesGUI.
SetShaderУстанавливает шейдер материала.
ShaderPropertyПодает UI для одного свойства шейдера.
TextureCompatibilityWarningПроверяет, не имеет ли конкретное свойство неправильного типа текстуры, указанного материалом, отображает соответствующее предупреждение и предлагает пользователю автоматически исправить проблему.
TexturePropertyНарисовать поле свойства для свойства текстурного шейдера.
TexturePropertyMiniThumbnailНарисуйте поле свойства для свойства шейдера текстуры, которое занимает только одну высоту строки.
TexturePropertySingleLineМетод отображения контроля свойств текстуры с дополнительными встроенными свойствами.
TexturePropertyTwoLinesМетод для отображения компактного расположения свойств.
TexturePropertyWithHDRColorМетод отображения контроля свойств текстуры с цветовым полем HDR и его плавающим полем яркости цвета.
TextureScaleOffsetPropertyРисует свойства мозаики и смещения для текстуры.
VectorPropertyНарисовать поле свойства для свойства векторного шейдера.

Защищенные методы

Метод Описание
OnShaderChangedОбратный вызов, который вызовется при изменении Shader материала в Inspector.

Статические методы

Метод Описание
ApplyMaterialPropertyDrawersПрименить первоначальные значения MaterialPropertyDrawer.
BeginPropertyСоздает оболочку, позволяющую Unity Editor отображать элементы управления GUI для свойства.
EndPropertyЗакрывает оболочку свойства, начинающуюся с MaterialEditor.BeginProperty.
FixupEmissiveFlagВозвращает правильно установленный глобальный флаг освещения на основе переданного флага и заданного цвета.
GetDefaultPropertyHeightРассчитать высоту, необходимую для свойства, игнорируя пользовательские ящики.
GetFlexibleRectBetweenFieldAndRightEdgeУтилита для GUI макетирования ShaderGUI. Используется e.g для прямой после левого выравниваемого поля Цвета.
GetFlexibleRectBetweenLabelAndFieldМетод пользования для GUI макетирования ShaderGUI.
GetLeftAlignedFieldRectМетод пользования для GUI макетирования ShaderGUI.
GetMaterialPropertiesПолучить информацию о свойствах шейдера материалов, которые вы передаете.
GetMaterialPropertyПолучить информацию о свойстве одного шейдера.
GetMaterialPropertyNamesПолучает имена свойств шейдеров материалов, которые вы передаёте.
GetRectAfterLabelWidthУтилита для GUI презентации ShaderGUI. Это rect после метки, который может быть использован для нескольких свойств. Ввод rect можно получить, вызвав: EditorGUILayout.GetControlRect.
GetRightAlignedFieldRectМетод пользования для GUI макетирования ShaderGUI.
Унаследованные члены 7

Свойства

СвойствоОписание
hasUnsavedChangesЭто свойство определяет, требует ли Редактор от пользователя сохранить или отбросить несохранённые изменения перед тем, как Inspector будет перестроен.
saveChangesMessageСообщение, которое отображается пользователю при получении запроса на сохранение.
serializedObjectSerializedObject, обозначающее объект или объекты, подлежащие проверке.
targetИнспектируемый объект.
targetsМассив всех объектов, подлежащих проверке.
hideFlagsДолжен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем?
nameИмя объекта.

Открытые методы

МетодОписание
CreateInspectorGUIИспользуйте этот метод для создания собственного инспектора UIElements.
DiscardChangesОтбрасывает несохраненные изменения в содержимом редактора.
DrawDefaultInspectorЧертает встроенный Inspector.
DrawHeaderВызывайте эту функцию, чтобы нарисовать заголовок редактора.
DrawPreviewПервая точка входа для чертежа предварительного просмотра.
GetInfoStringИспользуйте этот метод для отображения информации об ассете вверху предварительного просмотра ассета.
GetPreviewTitleПереопределите этот метод, если вы хотите изменить метку области Предварительного просмотра.
OnInteractivePreviewGUIРеализация для создания собственного интерактивного пользовательского предварительного просмотра. Интерактивные пользовательские предварительные просмотры используются в области предварительного просмотра инспектора и выборщика объектов.
OnPreviewSettingsПереопределите этот метод, если вы хотите показать настраиваемые элементы управления в заголовке предварительного просмотра.
RenderStaticPreviewПереопределите этот метод, если хотите отрисовывать статичный предпросмотр.
RepaintПерекройте любые инспекторы, которые показывают этот редактор.
SaveChangesВыполняет сохранение содержимого редактора.
UseDefaultMarginsПереопределите этот метод в подклассах, чтобы возвращать false, если вы не хотите полей по умолчанию.
GetInstanceIDПолучает экземпляр ID объекта.
ToStringВозвращает имя объекта.

Защищенные методы

МетодОписание
ShouldHideOpenButtonВозвращает настройку видимости кнопки "открыть" в Inspector.

Статические методы

МетодОписание
CreateCachedEditorПо возвращении previousEditor является редактором для targetObject или targetObjects. Функция либо возвращает, если редактор уже отслеживает объекты, либо уничтожает предыдущий редактор и создает новый.
CreateCachedEditorWithContextСоздает кэшированный редактор с помощью объекта контекста.
CreateEditorСоздайте пользовательский редактор для targetObject или targetObjects.
CreateEditorWithContextСоздайте пользовательский редактор для targetObject или targetObjects с контекстным объектом.
DrawFoldoutInspectorЧертает инспектор GUI с раскрывающимся заголовком для target.
DestroyУдаляет GameObject, компонент или ресурс.
DestroyImmediateНемедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования.
DontDestroyOnLoadНе уничтожать целевой Объект при загрузке нового Scene.
FindAnyObjectByTypeПолучает любой активный загруженный объект типа Type.
FindFirstObjectByTypeПолучает первый активный загруженный объект типа Type.
FindObjectsByTypeПолучает список всех загруженных объектов типа Type.
InstantiateКлонирует исходный объект и возвращает клон.
InstantiateAsyncЗахватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation.
CreateInstanceСоздает экземпляр скриптового объекта.

Операторы

ОператорОписание
boolСуществует ли объект?
оператор!=Сравнивает, если два объекта ссылаются на разные объекты.
оператор ==Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту.

Сообщения

СообщениеОписание
HasFrameBoundsПроверяет, можно ли рассчитать настраиваемые границы для этого редактора.
OnGetFrameBoundsПолучить настраиваемые границы для цели этого редактора.
OnSceneGUIПозволяет Редактору обрабатывать событие в представлении Scene.
OnDestroyЭта функция вызывается, когда скриптовый объект будет уничтожен.
OnValidateФункция только для редактора, которую вызывает Unity при загрузке скрипта или изменении значения в Inspector.
ResetСброс значений по умолчанию.

Мероприятия

МероприятиеОписание
finishedDefaultHeaderGUIСобытие, возникающее при рисовании заголовка окна Inspector, после того, как были нарисованы элементы заголовка по умолчанию.