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

GraphicsStateCollection

Экспериментальный: это API экспериментально и может быть изменено или удалено в будущем.

класс в UnityEngine.Experimental.Rendering

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

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

Описание

Коллекция вариантов шейдеров и связанных с ними графических состояний.

Используйте коллекции состояний графики, чтобы записывать варианты шейдеров и состояния графики, возникающие во время выполнения, и заранее прогревать варианты шейдеров.

У каждого варианта шейдера в коллекции может быть одно или несколько связанных состояний графики. Каждое сочетание варианта шейдера и состояния графики даёт одно GPU-представление шейдера, создаваемое Unity.

GraphicsStateCollection обычно заменяет ShaderVariantCollection класс для предварительного прогрева вариантов шейдера. На устаревших графических API, не поддерживающих предварительный прогрев состояний графики, WarmUp будет вновь использоваться ShaderVariantCollection.WarmUp.

using UnityEngine;
using UnityEngine.Experimental.Rendering;

public class GraphicsStateCollectionTracing : MonoBehaviour { public GraphicsStateCollection graphicsStateCollection;

void Start() { graphicsStateCollection = new GraphicsStateCollection(); graphicsStateCollection.BeginTrace(); }

void OnDestroy() { graphicsStateCollection.EndTrace(); } }

Свойства

Свойство Описание
completedWarmupCountКоличество прогретых перестановок состояния варианта шейдера.
graphicsDeviceTypeТип графического устройства API, с которым предполагается использовать коллекцию.
isTracingФлаг, указывающий, что коллекция активно отслеживает варианты шейдеров и графические состояния.
isWarmedUpФлаг, указывающий на то, что коллекции полностью нагреты.
qualityLevelNameУровень качества, с которым предполагается использовать коллекцию.
runtimePlatformПлатформа, на которой предполагается использовать коллекцию.
totalGraphicsStateCountОбщее число графических состояний по всем вариантам шейдеров в коллекции.
variantCountКоличество вариантов шейдеров, содержащихся в этой коллекции.
versionТекущая версия коллекции.

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

Конструктор Описание
GraphicsStateCollectionСоздать GraphicsStateCollection, заполненный содержимым файла, или пустой.

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

Метод Описание
AddGraphicsStateForVariantДобавлено новое состояние графики, связанное с вариантом шейдера.
AddVariantДобавление нового варианта шейдера в коллекцию.
AddVariantsДобавление одного или нескольких новых вариантов шейдеров в коллекцию.
BeginTraceНачало отслеживания вариантов шейдеров и графических состояний, возникающих во время выполнения.
ClearVariantsОчистка всех вариантов шейдеров и связанных с ними графических состояний из коллекции.
ContainsVariantПроверка наличия указанного ShaderVariant в коллекции.
CopyGraphicsStatesForVariantКопирование всех графических состояний из исходного варианта в конечный вариант.
EndTraceОстановить отслеживание вариантов шейдеров и графических состояний, возникающих во время выполнения.
GetGraphicsStateCountForVariantПолучить число графических состояний, связанных с вариантом входного шейдера.
GetGraphicsStatesForVariantЗаполнение данного списка графическими состояниями, связанными с вариантом входного шейдера.
GetVariantsЗаполнить указанный список вариантами шейдеров, содержащимися в коллекции.
LoadFromFileЗагрузить GraphicsStateCollection в указанном пути.
RemoveGraphicsStatesForVariantУдалить все связанные графические состояния из варианта входного шейдера.
RemoveVariantУдалить ShaderVariant и связанные с ним графические состояния из коллекции.
SaveToFileСохранить GraphicsStateCollection на диск.
SendToEditorОтправьте GraphicsStateCollection Редактору с помощью PlayerConnection.
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Существует ли объект?
оператор!=Сравнивает, если два объекта ссылаются на разные объекты.
оператор ==Сравнение двух ссылок на объекты для определения того, относятся ли они к одному и тому же объекту.