Описание
ShaderVariantCollection записывает, какие варианты шейдера фактически используются в каждом шейдере.
Это используется для предварительной загрузки шейдеров («прогрев»), чтобы игра могла убедиться, что «фактически необходимые» варианты шейдеров загружаются при запуске (или во время загрузки уровня), чтобы избежать сбоев, связанных с компиляцией шейдеров, позже в игре. .
В Unity многие шейдеры имеют несколько «вариантов» для учета различных режимов освещения, карт освещения, теней и т. д. Эти варианты идентифицируются по типу передачи шейдера и набору ключевых слов шейдера. См. ShaderVariant.
Обычно коллекция ShaderVariantCollection используется для записи вариантов шейдеров, использованных во время игрового сеанса, из редактора (в настройках графики), их сохранения в качестве актива и добавления в список предварительно загруженных шейдеров (опять же в настройках графики). Кроме того, вы можете вызвать WarmUp для объекта ShaderVariantCollection вручную.
ShaderVariantCollection generally replaces the old Shader.WarmupAllShaders function.
Свойства
isWarmedUp |
Этот ShaderVariantCollection уже подготовлен? (Только чтение) |
shaderCount |
Количество шейдеров в этой коллекции (только для чтения). |
variantCount |
Общее количество вариантов в этой коллекции (только для чтения). |
Конструкторы
Публичные Методы
Add |
Добавляет новый вариант шейдера в коллекцию. |
Clear |
Удалить все варианты шейдера из коллекции. |
Contains |
Проверяет наличие варианта шейдера в коллекции. |
Remove |
Добавляет вариант шейдера из коллекции. |
WarmUp |
Предварительно прогревает все варианты шейдеров в этой коллекции вариантов шейдеров. |
Унаследованные члены
Свойства
hideFlags |
Должен ли объект быть скрыт, сохранен вместе со сценой или изменен пользователем? |
name |
Имя объекта. |
Публичные Методы
Статические Методы
Операторы
bool |
Объект существует? |
operator != |
Сравнивает, ссылаются ли два объекта на другой объект. |
operator == |
Сравнивает две ссылки на объекты, чтобы определить, ссылаются ли они на один и тот же объект. |