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

ShaderVariantCollection

класс в UnityEngine

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

Выполнено в:UnityEngine.CoreModule

Описание

ShaderVariantCollection регистрирует, какие варианты шейдеров используются в каждом шейдере.

Это используется для предварительной загрузки шейдеров ("warmup"), так что игра может убедиться, что "фактически необходимые" варианты шейдеров загружаются при запуске (или во время загрузки уровня), чтобы избежать проблем, связанных с компиляцией шейдеров позже в игре.

В Unity многие шейдеры внутренне имеют множество "вариантов", чтобы учесть различные режимы освещения, lightmaps, тени и так далее. Эти варианты идентифицируются типом прохода шейдера и набором ключевых слов шейдера. См. ShaderVariant.

Типичное использование ShaderVariantCollection заключается в записи вариантов шейдеров, используемых во время игровой сессии из редактора (в графических настройках), сохранении их как ассета и добавлении в список предварительно загруженных шейдеров (снова в графических настройках). Кроме того, вы можете вызвать WarmUp на объекте ShaderVariantCollection вручную.

ShaderVariantCollection обычно заменяет старую функцию Shader.WarmupAllShaders.

Свойства

Свойство Описание
isWarmedUpЭтот ShaderVariantCollection уже нагрелся? (только для чтения)
shaderCountКоличество шейдеров в этой коллекции (только для чтения).
variantCountОбщее число вариантов в этой коллекции (только для чтения).
warmedUpVariantCountОбщее число вариантов в этой коллекции, которые уже нагреты (только для чтения).

Конструкторы

Конструктор Описание
ShaderVariantCollectionСоздать новую пустую коллекцию вариантов шейдера.

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

Метод Описание
AddДобавление нового варианта шейдера в коллекцию.
ClearУдалить все варианты шейдеров из коллекции.
ContainsПроверяет, есть ли в коллекции вариант шейдера.
RemoveУдаляет вариант шейдера из коллекции.
WarmUpПредварительная разогревает все варианты шейдера в этой коллекции вариантов шейдера.
WarmUpProgressivelyПредварительно нагревает указанное количество вариантов шейдеров в этой коллекции вариантов шейдеров.
Унаследованные члены 4

Свойства

СвойствоОписание
hideFlagsДолжен ли объект быть скрытым, сохраняться с Scene или изменяться пользователем?
nameИмя объекта.

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

МетодОписание
GetInstanceIDПолучает экземпляр ID объекта.
ToStringВозвращает имя объекта.

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

МетодОписание
DestroyУдаляет GameObject, компонент или ресурс.
DestroyImmediateНемедленно уничтожает указанный объект. Используйте с осторожностью и только в режиме редактирования.
DontDestroyOnLoadНе уничтожать целевой Объект при загрузке нового Scene.
FindAnyObjectByTypeПолучает любой активный загруженный объект типа Type.
FindFirstObjectByTypeПолучает первый активный загруженный объект типа Type.
FindObjectsByTypeПолучает список всех загруженных объектов типа Type.
InstantiateКлонирует исходный объект и возвращает клон.
InstantiateAsyncЗахватывает моментальный снимок первоначального объекта (который должен быть связан с каким-либо GameObject) и возвращает AsyncInstantiateOperation.

Операторы

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