Shader
Описание
Скрипты шейдеров, используемые для всего рендеринга.
Большая часть расширенного рендеринга контролируется через Material класс. Класс Shader используется в основном лишь для проверки того, может ли шейдер работать на оборудовании пользователя (isSupported свойства), настройка глобальных свойств и ключевых слов для шейдера, и поиск шейдеров по имени (Find метод).
Дополнительные ресурсы: Material class, Материалы, Документация по ShaderLab.
Статические свойства
| Свойство | Описание |
|---|---|
| enabledGlobalKeywords | Массив, содержащий ключевые слова глобального шейдера, которые в настоящее время включены. |
| globalKeywords | Массив, содержащий существующие в настоящее время ключевые слова глобального шейдера. Это включает включенные и отключенные ключевые слова глобального шейдера. |
| globalMaximumLOD | Уровень LOD для всех шейдеров. |
| globalRenderPipeline | Используемый в настоящее время конвейер отображения. |
| maximumChunksOverride | Устанавливает ограничение на количество вариантов шейдера, которые Unity загружает и хранит в памяти. |
Свойства
| Свойство | Описание |
|---|---|
| isSupported | Может ли этот шейдер работать на видеокарте конечного пользователя? (только для чтения) |
| keywordSpace | Локальное пространство ключевых слов этого шейдера. |
| maximumLOD | Уровень шейдера LOD для этого шейдера. |
| passCount | Возвращает количество проходов шейдера на активном SubShader. |
| renderQueue | Очередь рендеринга по умолчанию для данного шейдера. (только для чтения) |
| subshaderCount | Возвращает число SubShaders в этом шейдере. |
Открытые методы
| Метод | Описание |
|---|---|
| FindPassTagValue | Поиск тега, указанного tagName на активном SubShader шейдера и возвращение значения тега. |
| FindPropertyIndex | Находит индекс свойства шейдера по его имени. |
| FindSubshaderTagValue | Поиск тега, указанного в tagName, в SubShader, указанном в subshaderIndex, и возвращение значения тега. |
| FindTextureStack | Найдите имя стек текстуры, к которому принадлежит текстура. |
| GetDependency | Возвращает шейдер зависимости. |
| GetPassCountInSubshader | Возвращает количество проходов в заданной SubShader. |
| GetPropertyAttributes | Возвращает массив строк, содержащих атрибуты свойства shader на указанном индексе. |
| GetPropertyCount | Возвращает количество свойств в этом Shader. |
| GetPropertyDefaultFloatValue | Возвращает по умолчанию значение с плавающей запятой свойства shader на указанном индексе. |
| GetPropertyDefaultIntValue | Возвращает по умолчанию int значение свойства shader на указанном индексе. |
| GetPropertyDefaultVectorValue | Возвращает значение по умолчанию Vector4 свойства shader на указанном индексе. |
| GetPropertyDescription | Возвращает строку описания свойства shader на указанном индексе. |
| GetPropertyFlags | Возвращает ShaderPropertyFlags свойства shader на указанном индексе. |
| GetPropertyName | Возвращает имя свойства shader на указанном индексе. |
| GetPropertyNameId | Возвращает nameId свойства shader на указанном индексе. |
| GetPropertyRangeLimits | Возвращает минимальные и максимальные пределы для свойства Range в указанном индексе. |
| GetPropertyTextureDefaultName | Возвращает имя текстуры по умолчанию свойства шейдера текстуры в указанном индексе. |
| GetPropertyTextureDimension | Возвращает TextureDimension свойства шейдера Texture на указанном индексе. |
| GetPropertyType | Возвращает ShaderPropertyType свойства в указанном индексе. |
Статические методы
| Метод | Описание |
|---|---|
| DisableKeyword | Отключает глобальное ключевое слово шейдера. |
| EnableKeyword | Включает глобальное ключевое слово шейдера. |
| Find | Находит шейдер с указанным именем. Возвращает null, если шейдер не найден. |
| GetGlobalColor | Получает глобальное свойство цвета для всех шейдеров, ранее установленных с помощью SetGlobalColor. |
| GetGlobalFloat | Получает глобальное свойство float для всех шейдеров, ранее установленных с помощью SetGlobalFloat. |
| GetGlobalFloatArray | Получает глобальный массив с плавающей запятой для всех шейдеров, ранее установленных с помощью SetGlobalFloatArray. |
| GetGlobalInt | Этот метод устарел. Используйте вместо него GetGlobalFloat или GetGlobalInteger. |
| GetGlobalInteger | Получает глобальное целое свойство для всех шейдеров, ранее установленных с помощью SetGlobalInteger. |
| GetGlobalMatrix | Получает глобальное свойство матрицы для всех шейдеров, ранее установленных с помощью SetGlobalMatrix. |
| GetGlobalMatrixArray | Получает глобальный матричный массив для всех шейдеров, ранее установленных с помощью SetGlobalMatrixArray. |
| GetGlobalTexture | Получает глобальное свойство текстуры для всех шейдеров, ранее установленных с помощью SetGlobalTexture. |
| GetGlobalVector | Получает глобальное свойство вектора для всех шейдеров, ранее установленных с помощью SetGlobalVector. |
| GetGlobalVectorArray | Получает глобальный векторный массив для всех шейдеров, ранее установленных с помощью SetGlobalVectorArray. |
| IsKeywordEnabled | Проверяет, включено ли глобальное ключевое слово шейдера. |
| PropertyToID | Получает уникальный идентификатор для имени свойства шейдера. |
| SetGlobalBuffer | Задает глобальное свойство буфера для всех шейдеров. |
| SetGlobalColor | Задает глобальное свойство цвета для всех шейдеров. |
| SetGlobalConstantBuffer | Устанавливает ComputeBuffer или GraphicsBuffer в качестве именованного постоянного буфера для всех типов шейдеров. |
| SetGlobalFloat | Задает глобальное свойство float для всех шейдеров. |
| SetGlobalFloatArray | Задает глобальное свойство float array для всех шейдеров. |
| SetGlobalInt | Этот метод устарел. Используйте вместо него SetGlobalFloat или SetGlobalInteger. |
| SetGlobalInteger | Задает глобальное целое свойство для всех шейдеров. |
| SetGlobalMatrix | Задает глобальное свойство матрицы для всех шейдеров. |
| SetGlobalMatrixArray | Задает глобальное свойство массива матрицы для всех шейдеров. |
| SetGlobalRayTracingAccelerationStructure | Устанавливает глобальное свойство RayTracingAccelerationStructure для всех шейдеров. |
| SetGlobalTexture | Задает глобальное свойство текстуры для всех шейдеров. |
| SetGlobalVector | Задает глобальное свойство вектора для всех шейдеров. |
| SetGlobalVectorArray | Задает глобальное свойство векторного массива для всех шейдеров. |
| SetKeyword | Задаёт состояние глобального ключевого слова шейдера. |
| WarmupAllShaders | Предварительно разогревает все шейдерные варианты всех шейдеров, находящихся в памяти. |
Унаследованные члены 4
Свойства
| Свойство | Описание |
|---|---|
| hideFlags | Должен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем? |
| name | Имя объекта. |
Открытые методы
| Метод | Описание |
|---|---|
| GetInstanceID | Получает экземпляр ID объекта. |
| ToString | Возвращает имя объекта. |
Статические методы
| Метод | Описание |
|---|---|
| Destroy | Удаляет GameObject, компонент или ресурс. |
| DestroyImmediate | Немедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования. |
| DontDestroyOnLoad | Не уничтожать целевой Объект при загрузке нового Scene. |
| FindAnyObjectByType | Получает любой активный загруженный объект типа Type. |
| FindFirstObjectByType | Получает первый активный загруженный объект типа Type. |
| FindObjectsByType | Получает список всех загруженных объектов типа Type. |
| Instantiate | Клонирует исходный объект и возвращает клон. |
| InstantiateAsync | Захватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation. |
Операторы
| Оператор | Описание |
|---|---|
| bool | Существует ли объект? |
| оператор!= | Сравнивает, если два объекта ссылаются на разные объекты. |
| оператор == | Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту. |