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

ShaderLab: назначение пользовательского редактора

Эта страница содержит информацию об использовании блока CustomEditor в вашей ShaderLab Язык Unity для определения структуры объектов Shader. Подробнее
См. в Словарь
код для назначения пользовательские редакторы.

Использование пользовательских редакторов для отображения типов данных, которые Unity не может отображать с помощью материала по умолчанию. InspectorОкно Unity, отображающее информацию о текущем выбранном игровом объекте, активе или настройках проекта, что позволяет вам проверять и редактировать значения. Дополнительная информация
См. в Словарь
или для определения пользовательских элементов управления или проверки данных.

Совместимость конвейера рендеринга

Название функции Встроенный конвейер рендеринга Универсальный конвейер рендеринга (URP) Конвейер рендеринга высокого разрешения (HDRP) Пользовательская SRP
ShaderLab: CustomEditor block Да Да Да Да

Использование блоков CustomEditor

В ShaderLab вы можете назначить пользовательский редактор для всех конвейеров рендеринга. Для этого вы можете поместить блок CustomEditor внутрь блока Shader.

Подпись Функции
CustomEditor “[custom editor class name]” Unity использует пользовательский редактор, определенный в именованном классе.

Создание пользовательского класса редактора для объекта шейдера

Чтобы определить пользовательский редактор для шейдерапрограммы, работающей на графическом процессоре. Подробнее
Просмотрите в Словарь
активы, которые представляют данный объект Shader, вы создаете скрипт, который наследуется от класса ShaderGUI. Поместите свой сценарий в папку с именем Editor в папке Assets.

Сценарий должен иметь следующий формат:

using UnityEditor; public class ExampleShaderGUI : ShaderGUI { public override void OnGUI (MaterialEditor materialEditor, MaterialProperty[] properties) { // Custom code that controls the appearance of the Inspector goes here base.OnGUI (materialEditor, properties); } }

Примеры

В этом примере кода демонстрируется синтаксис для указания пользовательского редактора по умолчанию для объекта шейдера с помощью блока CustomEditor.

Shader "Examples/UsesCustomEditor" { // The Unity Editor uses the class ExampleCustomEditor to configure the Inspector for this shader asset CustomEditor "ExampleShaderGUI" SubShader { // Code that defines the SubShader goes here. Pass { // Code that defines the Pass goes here. } } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3